@themoltnet/agent-daemon 0.11.0 → 0.12.0
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.
- package/README.md +5 -0
- package/dist/main.js +563 -462
- package/package.json +6 -6
package/dist/main.js
CHANGED
|
@@ -4190,6 +4190,60 @@ var CuratePackOutput = Type$2.Object({
|
|
|
4190
4190
|
additionalProperties: false
|
|
4191
4191
|
});
|
|
4192
4192
|
//#endregion
|
|
4193
|
+
//#region ../../libs/tasks/src/task-types/freeform.ts
|
|
4194
|
+
var FREEFORM_TYPE = "freeform";
|
|
4195
|
+
var FreeformExecutionOptions = Type$2.Object({ workspace: Type$2.Optional(Type$2.Union([
|
|
4196
|
+
Type$2.Literal("none"),
|
|
4197
|
+
Type$2.Literal("shared_mount"),
|
|
4198
|
+
Type$2.Literal("dedicated_worktree")
|
|
4199
|
+
])) }, {
|
|
4200
|
+
$id: "FreeformExecutionOptions",
|
|
4201
|
+
additionalProperties: false
|
|
4202
|
+
});
|
|
4203
|
+
var FreeformTaskTypeProposal = Type$2.Object({
|
|
4204
|
+
name: Type$2.String({ minLength: 1 }),
|
|
4205
|
+
rationale: Type$2.String({ minLength: 1 }),
|
|
4206
|
+
inputShape: Type$2.Optional(Type$2.Record(Type$2.String(), Type$2.Unknown())),
|
|
4207
|
+
outputShape: Type$2.Optional(Type$2.Record(Type$2.String(), Type$2.Unknown()))
|
|
4208
|
+
}, {
|
|
4209
|
+
$id: "FreeformTaskTypeProposal",
|
|
4210
|
+
additionalProperties: false
|
|
4211
|
+
});
|
|
4212
|
+
var FreeformInput = Type$2.Object({
|
|
4213
|
+
title: Type$2.Optional(Type$2.String({ minLength: 1 })),
|
|
4214
|
+
brief: Type$2.String({ minLength: 1 }),
|
|
4215
|
+
expectedOutput: Type$2.Optional(Type$2.String({ minLength: 1 })),
|
|
4216
|
+
constraints: Type$2.Optional(Type$2.Array(Type$2.String({ minLength: 1 }), { maxItems: 20 })),
|
|
4217
|
+
suggestedTaskType: Type$2.Optional(Type$2.String({ minLength: 1 })),
|
|
4218
|
+
successCriteria: Type$2.Optional(SuccessCriteria),
|
|
4219
|
+
context: Type$2.Optional(TaskContext),
|
|
4220
|
+
execution: Type$2.Optional(FreeformExecutionOptions)
|
|
4221
|
+
}, {
|
|
4222
|
+
$id: "FreeformInput",
|
|
4223
|
+
additionalProperties: false
|
|
4224
|
+
});
|
|
4225
|
+
var FreeformArtifact = Type$2.Object({
|
|
4226
|
+
kind: Type$2.String({ minLength: 1 }),
|
|
4227
|
+
title: Type$2.String({ minLength: 1 }),
|
|
4228
|
+
description: Type$2.Optional(Type$2.String({ minLength: 1 })),
|
|
4229
|
+
url: Type$2.Optional(Type$2.String({ minLength: 1 })),
|
|
4230
|
+
path: Type$2.Optional(Type$2.String({ minLength: 1 })),
|
|
4231
|
+
body: Type$2.Optional(Type$2.String({ maxLength: 65536 }))
|
|
4232
|
+
}, {
|
|
4233
|
+
$id: "FreeformArtifact",
|
|
4234
|
+
additionalProperties: false
|
|
4235
|
+
});
|
|
4236
|
+
var FreeformOutput = Type$2.Object({
|
|
4237
|
+
summary: Type$2.String({ minLength: 1 }),
|
|
4238
|
+
artifacts: Type$2.Optional(Type$2.Array(FreeformArtifact, { maxItems: 20 })),
|
|
4239
|
+
proposedTaskType: Type$2.Optional(FreeformTaskTypeProposal),
|
|
4240
|
+
diaryEntryIds: Type$2.Optional(Type$2.Array(Type$2.String({ format: "uuid" }))),
|
|
4241
|
+
verification: Type$2.Optional(VerificationRecord)
|
|
4242
|
+
}, {
|
|
4243
|
+
$id: "FreeformOutput",
|
|
4244
|
+
additionalProperties: false
|
|
4245
|
+
});
|
|
4246
|
+
//#endregion
|
|
4193
4247
|
//#region ../../libs/tasks/src/task-types/fulfill-brief.ts
|
|
4194
4248
|
/**
|
|
4195
4249
|
* `fulfill_brief` — produce a signed change against a coding brief.
|
|
@@ -4748,6 +4802,19 @@ function requireVerificationWhenCriteriaPresent(output, input) {
|
|
|
4748
4802
|
* / claiming a task.
|
|
4749
4803
|
*/
|
|
4750
4804
|
var BUILT_IN_TASK_TYPES = {
|
|
4805
|
+
[FREEFORM_TYPE]: {
|
|
4806
|
+
name: FREEFORM_TYPE,
|
|
4807
|
+
inputSchema: FreeformInput,
|
|
4808
|
+
outputSchema: FreeformOutput,
|
|
4809
|
+
outputKind: "artifact",
|
|
4810
|
+
resumable: true,
|
|
4811
|
+
workspaceMode: "shared_mount",
|
|
4812
|
+
workspaceScope: "session",
|
|
4813
|
+
sessionScope: "correlation",
|
|
4814
|
+
acceptsInputWorkspaceOverride: true,
|
|
4815
|
+
requiresReferences: false,
|
|
4816
|
+
validateOutput: requireVerificationWhenCriteriaPresent
|
|
4817
|
+
},
|
|
4751
4818
|
[FULFILL_BRIEF_TYPE]: {
|
|
4752
4819
|
name: FULFILL_BRIEF_TYPE,
|
|
4753
4820
|
inputSchema: FulfillBriefInput,
|
|
@@ -4825,6 +4892,7 @@ var BUILT_IN_TASK_TYPES = {
|
|
|
4825
4892
|
resumable: true,
|
|
4826
4893
|
workspaceScope: "session",
|
|
4827
4894
|
sessionScope: "custom",
|
|
4895
|
+
acceptsInputWorkspaceOverride: true,
|
|
4828
4896
|
requiresReferences: false,
|
|
4829
4897
|
validateOutput: validateRunEvalOutput
|
|
4830
4898
|
},
|
|
@@ -5784,6 +5852,13 @@ function taskTypeSessionScope(taskType) {
|
|
|
5784
5852
|
return getTaskTypeEntry(taskType)?.sessionScope ?? "none";
|
|
5785
5853
|
}
|
|
5786
5854
|
/**
|
|
5855
|
+
* Whether a task type accepts a proposer-supplied workspace mode via
|
|
5856
|
+
* `task.input.execution.workspace`. Unknown task types default to false.
|
|
5857
|
+
*/
|
|
5858
|
+
function taskTypeAcceptsInputWorkspaceOverride(taskType) {
|
|
5859
|
+
return getTaskTypeEntry(taskType)?.acceptsInputWorkspaceOverride ?? false;
|
|
5860
|
+
}
|
|
5861
|
+
/**
|
|
5787
5862
|
* Resolve the daemon-relevant execution policy declared by a task type.
|
|
5788
5863
|
*
|
|
5789
5864
|
* This is the single read path for "may this task reuse a warm session?" and
|
|
@@ -5796,6 +5871,7 @@ function getTaskExecutionPolicy(taskType) {
|
|
|
5796
5871
|
workspaceMode: taskTypeWorkspaceMode(taskType),
|
|
5797
5872
|
workspaceScope: taskTypeWorkspaceScope(taskType),
|
|
5798
5873
|
sessionScope: taskTypeSessionScope(taskType),
|
|
5874
|
+
acceptsInputWorkspaceOverride: taskTypeAcceptsInputWorkspaceOverride(taskType),
|
|
5799
5875
|
usesSubagents: taskTypeUsesSubagents(taskType)
|
|
5800
5876
|
};
|
|
5801
5877
|
}
|
|
@@ -6802,6 +6878,95 @@ function buildCuratePackUserPrompt(input, ctx) {
|
|
|
6802
6878
|
]);
|
|
6803
6879
|
}
|
|
6804
6880
|
//#endregion
|
|
6881
|
+
//#region ../../libs/agent-runtime/src/prompts/freeform.ts
|
|
6882
|
+
function buildFreeformUserPrompt(input, ctx) {
|
|
6883
|
+
const header = [
|
|
6884
|
+
"# Freeform Task Agent",
|
|
6885
|
+
"",
|
|
6886
|
+
"You are handling an exploratory MoltNet task that does not yet have a",
|
|
6887
|
+
"more specific execution contract. Treat the brief as the source of truth,",
|
|
6888
|
+
"use judgment, and keep the result useful enough for a human or another",
|
|
6889
|
+
"agent to continue from it.",
|
|
6890
|
+
"",
|
|
6891
|
+
`Task id: \`${ctx.taskId}\``
|
|
6892
|
+
].join("\n");
|
|
6893
|
+
const expectedOutput = input.expectedOutput ?? "";
|
|
6894
|
+
const constraints = input.constraints?.length ? input.constraints.map((constraint) => `- ${constraint}`).join("\n") : "";
|
|
6895
|
+
const suggestedTaskType = input.suggestedTaskType ? [`The proposer suggested task type \`${input.suggestedTaskType}\`.`, "Use it as a hint, not as a contract."].join("\n") : "";
|
|
6896
|
+
const workflow = [
|
|
6897
|
+
"1. Clarify the real objective from the brief before acting.",
|
|
6898
|
+
"2. Gather enough context to avoid guessing.",
|
|
6899
|
+
"3. Complete the requested work when it is safe and bounded.",
|
|
6900
|
+
"4. If the request reveals a recurring task shape, include a",
|
|
6901
|
+
" `proposedTaskType` in the final output with a concise rationale."
|
|
6902
|
+
].join("\n");
|
|
6903
|
+
return assembleTaskPrompt("freeform", [
|
|
6904
|
+
{
|
|
6905
|
+
id: "freeform.header",
|
|
6906
|
+
source: "header",
|
|
6907
|
+
body: header
|
|
6908
|
+
},
|
|
6909
|
+
{
|
|
6910
|
+
id: "freeform.title",
|
|
6911
|
+
source: "task_input",
|
|
6912
|
+
header: "Title",
|
|
6913
|
+
body: input.title ?? ""
|
|
6914
|
+
},
|
|
6915
|
+
{
|
|
6916
|
+
id: "freeform.brief",
|
|
6917
|
+
source: "task_input",
|
|
6918
|
+
header: "Brief",
|
|
6919
|
+
body: input.brief
|
|
6920
|
+
},
|
|
6921
|
+
{
|
|
6922
|
+
id: "freeform.expected_output",
|
|
6923
|
+
source: "task_input",
|
|
6924
|
+
header: "Expected Output",
|
|
6925
|
+
body: expectedOutput
|
|
6926
|
+
},
|
|
6927
|
+
{
|
|
6928
|
+
id: "freeform.constraints",
|
|
6929
|
+
source: "task_input",
|
|
6930
|
+
header: "Constraints",
|
|
6931
|
+
body: constraints
|
|
6932
|
+
},
|
|
6933
|
+
{
|
|
6934
|
+
id: "freeform.suggested_task_type",
|
|
6935
|
+
source: "task_input",
|
|
6936
|
+
header: "Suggested Task Type",
|
|
6937
|
+
body: suggestedTaskType
|
|
6938
|
+
},
|
|
6939
|
+
{
|
|
6940
|
+
id: "freeform.workflow",
|
|
6941
|
+
source: "static",
|
|
6942
|
+
header: "Workflow",
|
|
6943
|
+
body: workflow
|
|
6944
|
+
},
|
|
6945
|
+
{
|
|
6946
|
+
id: "freeform.verification",
|
|
6947
|
+
source: "verification",
|
|
6948
|
+
body: buildSelfVerificationBlock(ctx.taskId)
|
|
6949
|
+
},
|
|
6950
|
+
{
|
|
6951
|
+
id: "freeform.final_output",
|
|
6952
|
+
source: "final_output",
|
|
6953
|
+
body: buildFinalOutputBlock({
|
|
6954
|
+
taskType: "freeform",
|
|
6955
|
+
outputSchemaName: "FreeformOutput",
|
|
6956
|
+
shapeSketch: [
|
|
6957
|
+
"{",
|
|
6958
|
+
" \"summary\": \"<2-5 sentence result>\",",
|
|
6959
|
+
" \"artifacts\": [{ \"kind\": \"...\", \"title\": \"...\", \"description\": \"...\", \"body\": \"<inline content up to 64 KiB; preferred for textual output so it persists with the task>\", \"url\": \"...\", \"path\": \"<worktree-ephemeral; not persisted after completion>\" }],",
|
|
6960
|
+
" \"proposedTaskType\": { \"name\": \"...\", \"rationale\": \"...\", \"inputShape\": {}, \"outputShape\": {} },",
|
|
6961
|
+
" \"diaryEntryIds\": [\"...\"],",
|
|
6962
|
+
" \"verification\": <required iff input.successCriteria; see Self-verification>",
|
|
6963
|
+
"}"
|
|
6964
|
+
].join("\n")
|
|
6965
|
+
})
|
|
6966
|
+
}
|
|
6967
|
+
]);
|
|
6968
|
+
}
|
|
6969
|
+
//#endregion
|
|
6805
6970
|
//#region ../../libs/agent-runtime/src/prompts/fulfill-brief.ts
|
|
6806
6971
|
/**
|
|
6807
6972
|
* Build the first user-message prompt for a `fulfill_brief` task.
|
|
@@ -6851,7 +7016,11 @@ function buildFulfillBriefUserPrompt(input, ctx) {
|
|
|
6851
7016
|
"5. For every commit, create a signed diary entry first via",
|
|
6852
7017
|
" `moltnet_create_entry` and embed its id in the commit trailer",
|
|
6853
7018
|
" `MoltNet-Diary: <id>` (per the runtime instructor).",
|
|
6854
|
-
"6. Push the branch and open a PR
|
|
7019
|
+
"6. Push the branch and open a PR — run `git push` and `gh pr create`",
|
|
7020
|
+
" IN the VM with your normal `bash` tool (use the",
|
|
7021
|
+
" `GH_TOKEN=$(moltnet github token …) gh …` form from the runtime",
|
|
7022
|
+
" instructor). Do NOT use `moltnet_host_exec` for this; it needs human",
|
|
7023
|
+
" approval that is unavailable in a headless run."
|
|
6855
7024
|
].join("\n");
|
|
6856
7025
|
return assembleTaskPrompt("fulfill_brief", [
|
|
6857
7026
|
{
|
|
@@ -7551,6 +7720,12 @@ function buildRunEvalUserPrompt(input, ctx) {
|
|
|
7551
7720
|
*/
|
|
7552
7721
|
function buildTaskUserPrompt(task, ctx) {
|
|
7553
7722
|
switch (task.taskType) {
|
|
7723
|
+
case FREEFORM_TYPE:
|
|
7724
|
+
if (!Check(FreeformInput, task.input)) {
|
|
7725
|
+
const errors = [...Errors(FreeformInput, task.input)];
|
|
7726
|
+
throw new Error(`freeform input failed validation: ${JSON.stringify(errors.slice(0, 3))}`);
|
|
7727
|
+
}
|
|
7728
|
+
return buildFreeformUserPrompt(task.input, { taskId: ctx.taskId });
|
|
7554
7729
|
case FULFILL_BRIEF_TYPE:
|
|
7555
7730
|
if (!Check(FulfillBriefInput, task.input)) {
|
|
7556
7731
|
const errors = [...Errors(FulfillBriefInput, task.input)];
|
|
@@ -8636,16 +8811,16 @@ var client = createClient(createConfig({ baseUrl: "https://api.themolt.net" }));
|
|
|
8636
8811
|
//#endregion
|
|
8637
8812
|
//#region ../../libs/api-client/src/generated/sdk.gen.ts
|
|
8638
8813
|
/**
|
|
8639
|
-
*
|
|
8814
|
+
* MoltNet network discovery document (RFC 8615 well-known URI). Returns network info, endpoints, capabilities, quickstart steps, and philosophy. No authentication required.
|
|
8640
8815
|
*/
|
|
8641
|
-
var
|
|
8642
|
-
url: "/
|
|
8816
|
+
var getNetworkInfo = (options) => (options?.client ?? client).get({
|
|
8817
|
+
url: "/.well-known/moltnet.json",
|
|
8643
8818
|
...options
|
|
8644
8819
|
});
|
|
8645
8820
|
/**
|
|
8646
|
-
*
|
|
8821
|
+
* Get the authenticated agent identity (requires bearer token).
|
|
8647
8822
|
*/
|
|
8648
|
-
var
|
|
8823
|
+
var getWhoami = (options) => (options?.client ?? client).get({
|
|
8649
8824
|
security: [
|
|
8650
8825
|
{
|
|
8651
8826
|
scheme: "bearer",
|
|
@@ -8661,29 +8836,21 @@ var listDiaries = (options) => (options?.client ?? client).get({
|
|
|
8661
8836
|
type: "apiKey"
|
|
8662
8837
|
}
|
|
8663
8838
|
],
|
|
8664
|
-
url: "/
|
|
8839
|
+
url: "/agents/whoami",
|
|
8665
8840
|
...options
|
|
8666
8841
|
});
|
|
8667
8842
|
/**
|
|
8668
|
-
*
|
|
8843
|
+
* Get an agent's public profile by key fingerprint (A1B2-C3D4-E5F6-G7H8).
|
|
8669
8844
|
*/
|
|
8670
|
-
var
|
|
8671
|
-
|
|
8672
|
-
|
|
8673
|
-
|
|
8674
|
-
|
|
8675
|
-
|
|
8676
|
-
|
|
8677
|
-
|
|
8678
|
-
|
|
8679
|
-
},
|
|
8680
|
-
{
|
|
8681
|
-
in: "cookie",
|
|
8682
|
-
name: "ory_kratos_session",
|
|
8683
|
-
type: "apiKey"
|
|
8684
|
-
}
|
|
8685
|
-
],
|
|
8686
|
-
url: "/diaries",
|
|
8845
|
+
var getAgentProfile = (options) => (options.client ?? client).get({
|
|
8846
|
+
url: "/agents/{fingerprint}",
|
|
8847
|
+
...options
|
|
8848
|
+
});
|
|
8849
|
+
/**
|
|
8850
|
+
* Verify a signature belongs to the specified agent.
|
|
8851
|
+
*/
|
|
8852
|
+
var verifyAgentSignature = (options) => (options.client ?? client).post({
|
|
8853
|
+
url: "/agents/{fingerprint}/verify",
|
|
8687
8854
|
...options,
|
|
8688
8855
|
headers: {
|
|
8689
8856
|
"Content-Type": "application/json",
|
|
@@ -8691,9 +8858,9 @@ var createDiary = (options) => (options.client ?? client).post({
|
|
|
8691
8858
|
}
|
|
8692
8859
|
});
|
|
8693
8860
|
/**
|
|
8694
|
-
*
|
|
8861
|
+
* Rotate the OAuth2 client secret. Returns the new clientId/clientSecret pair. The old secret is invalidated immediately.
|
|
8695
8862
|
*/
|
|
8696
|
-
var
|
|
8863
|
+
var rotateClientSecret = (options) => (options?.client ?? client).post({
|
|
8697
8864
|
security: [
|
|
8698
8865
|
{
|
|
8699
8866
|
scheme: "bearer",
|
|
@@ -8709,13 +8876,13 @@ var deleteDiary = (options) => (options.client ?? client).delete({
|
|
|
8709
8876
|
type: "apiKey"
|
|
8710
8877
|
}
|
|
8711
8878
|
],
|
|
8712
|
-
url: "/
|
|
8879
|
+
url: "/auth/rotate-secret",
|
|
8713
8880
|
...options
|
|
8714
8881
|
});
|
|
8715
8882
|
/**
|
|
8716
|
-
* Get
|
|
8883
|
+
* Get the authenticated agent's cryptographic identity (keys, fingerprint).
|
|
8717
8884
|
*/
|
|
8718
|
-
var
|
|
8885
|
+
var getCryptoIdentity = (options) => (options?.client ?? client).get({
|
|
8719
8886
|
security: [
|
|
8720
8887
|
{
|
|
8721
8888
|
scheme: "bearer",
|
|
@@ -8731,13 +8898,13 @@ var getDiary = (options) => (options.client ?? client).get({
|
|
|
8731
8898
|
type: "apiKey"
|
|
8732
8899
|
}
|
|
8733
8900
|
],
|
|
8734
|
-
url: "/
|
|
8901
|
+
url: "/crypto/identity",
|
|
8735
8902
|
...options
|
|
8736
8903
|
});
|
|
8737
8904
|
/**
|
|
8738
|
-
*
|
|
8905
|
+
* List signing requests for the authenticated agent.
|
|
8739
8906
|
*/
|
|
8740
|
-
var
|
|
8907
|
+
var listSigningRequests = (options) => (options?.client ?? client).get({
|
|
8741
8908
|
security: [
|
|
8742
8909
|
{
|
|
8743
8910
|
scheme: "bearer",
|
|
@@ -8753,17 +8920,13 @@ var updateDiary = (options) => (options.client ?? client).patch({
|
|
|
8753
8920
|
type: "apiKey"
|
|
8754
8921
|
}
|
|
8755
8922
|
],
|
|
8756
|
-
url: "/
|
|
8757
|
-
...options
|
|
8758
|
-
headers: {
|
|
8759
|
-
"Content-Type": "application/json",
|
|
8760
|
-
...options.headers
|
|
8761
|
-
}
|
|
8923
|
+
url: "/crypto/signing-requests",
|
|
8924
|
+
...options
|
|
8762
8925
|
});
|
|
8763
8926
|
/**
|
|
8764
|
-
*
|
|
8927
|
+
* Create a signing request. The server generates a nonce and starts a DBOS workflow that waits for the agent to submit a signature.
|
|
8765
8928
|
*/
|
|
8766
|
-
var
|
|
8929
|
+
var createSigningRequest = (options) => (options.client ?? client).post({
|
|
8767
8930
|
security: [
|
|
8768
8931
|
{
|
|
8769
8932
|
scheme: "bearer",
|
|
@@ -8779,7 +8942,7 @@ var revokeDiaryGrant = (options) => (options.client ?? client).delete({
|
|
|
8779
8942
|
type: "apiKey"
|
|
8780
8943
|
}
|
|
8781
8944
|
],
|
|
8782
|
-
url: "/
|
|
8945
|
+
url: "/crypto/signing-requests",
|
|
8783
8946
|
...options,
|
|
8784
8947
|
headers: {
|
|
8785
8948
|
"Content-Type": "application/json",
|
|
@@ -8787,9 +8950,9 @@ var revokeDiaryGrant = (options) => (options.client ?? client).delete({
|
|
|
8787
8950
|
}
|
|
8788
8951
|
});
|
|
8789
8952
|
/**
|
|
8790
|
-
*
|
|
8953
|
+
* Get a specific signing request by ID.
|
|
8791
8954
|
*/
|
|
8792
|
-
var
|
|
8955
|
+
var getSigningRequest = (options) => (options.client ?? client).get({
|
|
8793
8956
|
security: [
|
|
8794
8957
|
{
|
|
8795
8958
|
scheme: "bearer",
|
|
@@ -8805,13 +8968,13 @@ var listDiaryGrants = (options) => (options.client ?? client).get({
|
|
|
8805
8968
|
type: "apiKey"
|
|
8806
8969
|
}
|
|
8807
8970
|
],
|
|
8808
|
-
url: "/
|
|
8971
|
+
url: "/crypto/signing-requests/{id}",
|
|
8809
8972
|
...options
|
|
8810
8973
|
});
|
|
8811
8974
|
/**
|
|
8812
|
-
*
|
|
8975
|
+
* Submit a signature for a signing request. The DBOS workflow verifies the signature and updates the request status.
|
|
8813
8976
|
*/
|
|
8814
|
-
var
|
|
8977
|
+
var submitSignature = (options) => (options.client ?? client).post({
|
|
8815
8978
|
security: [
|
|
8816
8979
|
{
|
|
8817
8980
|
scheme: "bearer",
|
|
@@ -8827,7 +8990,7 @@ var createDiaryGrant = (options) => (options.client ?? client).post({
|
|
|
8827
8990
|
type: "apiKey"
|
|
8828
8991
|
}
|
|
8829
8992
|
],
|
|
8830
|
-
url: "/
|
|
8993
|
+
url: "/crypto/signing-requests/{id}/sign",
|
|
8831
8994
|
...options,
|
|
8832
8995
|
headers: {
|
|
8833
8996
|
"Content-Type": "application/json",
|
|
@@ -8835,25 +8998,10 @@ var createDiaryGrant = (options) => (options.client ?? client).post({
|
|
|
8835
8998
|
}
|
|
8836
8999
|
});
|
|
8837
9000
|
/**
|
|
8838
|
-
*
|
|
9001
|
+
* Verify an Ed25519 signature by looking up the signing request.
|
|
8839
9002
|
*/
|
|
8840
|
-
var
|
|
8841
|
-
|
|
8842
|
-
{
|
|
8843
|
-
scheme: "bearer",
|
|
8844
|
-
type: "http"
|
|
8845
|
-
},
|
|
8846
|
-
{
|
|
8847
|
-
name: "X-Moltnet-Session-Token",
|
|
8848
|
-
type: "apiKey"
|
|
8849
|
-
},
|
|
8850
|
-
{
|
|
8851
|
-
in: "cookie",
|
|
8852
|
-
name: "ory_kratos_session",
|
|
8853
|
-
type: "apiKey"
|
|
8854
|
-
}
|
|
8855
|
-
],
|
|
8856
|
-
url: "/diaries/{id}/transfer",
|
|
9003
|
+
var verifyCryptoSignature = (options) => (options.client ?? client).post({
|
|
9004
|
+
url: "/crypto/verify",
|
|
8857
9005
|
...options,
|
|
8858
9006
|
headers: {
|
|
8859
9007
|
"Content-Type": "application/json",
|
|
@@ -8861,9 +9009,9 @@ var initiateTransfer = (options) => (options.client ?? client).post({
|
|
|
8861
9009
|
}
|
|
8862
9010
|
});
|
|
8863
9011
|
/**
|
|
8864
|
-
* List
|
|
9012
|
+
* List the authenticated agent's diaries.
|
|
8865
9013
|
*/
|
|
8866
|
-
var
|
|
9014
|
+
var listDiaries = (options) => (options?.client ?? client).get({
|
|
8867
9015
|
security: [
|
|
8868
9016
|
{
|
|
8869
9017
|
scheme: "bearer",
|
|
@@ -8879,13 +9027,13 @@ var listPendingTransfers = (options) => (options?.client ?? client).get({
|
|
|
8879
9027
|
type: "apiKey"
|
|
8880
9028
|
}
|
|
8881
9029
|
],
|
|
8882
|
-
url: "/
|
|
9030
|
+
url: "/diaries",
|
|
8883
9031
|
...options
|
|
8884
9032
|
});
|
|
8885
9033
|
/**
|
|
8886
|
-
*
|
|
9034
|
+
* Create a new diary.
|
|
8887
9035
|
*/
|
|
8888
|
-
var
|
|
9036
|
+
var createDiary = (options) => (options.client ?? client).post({
|
|
8889
9037
|
security: [
|
|
8890
9038
|
{
|
|
8891
9039
|
scheme: "bearer",
|
|
@@ -8901,13 +9049,17 @@ var acceptTransfer = (options) => (options.client ?? client).post({
|
|
|
8901
9049
|
type: "apiKey"
|
|
8902
9050
|
}
|
|
8903
9051
|
],
|
|
8904
|
-
url: "/
|
|
8905
|
-
...options
|
|
9052
|
+
url: "/diaries",
|
|
9053
|
+
...options,
|
|
9054
|
+
headers: {
|
|
9055
|
+
"Content-Type": "application/json",
|
|
9056
|
+
...options.headers
|
|
9057
|
+
}
|
|
8906
9058
|
});
|
|
8907
9059
|
/**
|
|
8908
|
-
*
|
|
9060
|
+
* Search diary entries using hybrid search.
|
|
8909
9061
|
*/
|
|
8910
|
-
var
|
|
9062
|
+
var searchDiary = (options) => (options?.client ?? client).post({
|
|
8911
9063
|
security: [
|
|
8912
9064
|
{
|
|
8913
9065
|
scheme: "bearer",
|
|
@@ -8923,8 +9075,12 @@ var rejectTransfer = (options) => (options.client ?? client).post({
|
|
|
8923
9075
|
type: "apiKey"
|
|
8924
9076
|
}
|
|
8925
9077
|
],
|
|
8926
|
-
url: "/
|
|
8927
|
-
...options
|
|
9078
|
+
url: "/diaries/search",
|
|
9079
|
+
...options,
|
|
9080
|
+
headers: {
|
|
9081
|
+
"Content-Type": "application/json",
|
|
9082
|
+
...options?.headers
|
|
9083
|
+
}
|
|
8928
9084
|
});
|
|
8929
9085
|
/**
|
|
8930
9086
|
* List diary entries for a specific diary.
|
|
@@ -8997,9 +9153,9 @@ var listDiaryTags = (options) => (options.client ?? client).get({
|
|
|
8997
9153
|
...options
|
|
8998
9154
|
});
|
|
8999
9155
|
/**
|
|
9000
|
-
* Delete a diary
|
|
9156
|
+
* Delete a diary and cascade-delete its entries.
|
|
9001
9157
|
*/
|
|
9002
|
-
var
|
|
9158
|
+
var deleteDiary = (options) => (options.client ?? client).delete({
|
|
9003
9159
|
security: [
|
|
9004
9160
|
{
|
|
9005
9161
|
scheme: "bearer",
|
|
@@ -9015,13 +9171,13 @@ var deleteDiaryEntryById = (options) => (options.client ?? client).delete({
|
|
|
9015
9171
|
type: "apiKey"
|
|
9016
9172
|
}
|
|
9017
9173
|
],
|
|
9018
|
-
url: "/
|
|
9174
|
+
url: "/diaries/{id}",
|
|
9019
9175
|
...options
|
|
9020
9176
|
});
|
|
9021
9177
|
/**
|
|
9022
|
-
* Get a
|
|
9178
|
+
* Get a diary by ID.
|
|
9023
9179
|
*/
|
|
9024
|
-
var
|
|
9180
|
+
var getDiary = (options) => (options.client ?? client).get({
|
|
9025
9181
|
security: [
|
|
9026
9182
|
{
|
|
9027
9183
|
scheme: "bearer",
|
|
@@ -9037,13 +9193,13 @@ var getDiaryEntryById = (options) => (options.client ?? client).get({
|
|
|
9037
9193
|
type: "apiKey"
|
|
9038
9194
|
}
|
|
9039
9195
|
],
|
|
9040
|
-
url: "/
|
|
9196
|
+
url: "/diaries/{id}",
|
|
9041
9197
|
...options
|
|
9042
9198
|
});
|
|
9043
9199
|
/**
|
|
9044
|
-
* Update
|
|
9200
|
+
* Update diary name or visibility.
|
|
9045
9201
|
*/
|
|
9046
|
-
var
|
|
9202
|
+
var updateDiary = (options) => (options.client ?? client).patch({
|
|
9047
9203
|
security: [
|
|
9048
9204
|
{
|
|
9049
9205
|
scheme: "bearer",
|
|
@@ -9059,7 +9215,7 @@ var updateDiaryEntryById = (options) => (options.client ?? client).patch({
|
|
|
9059
9215
|
type: "apiKey"
|
|
9060
9216
|
}
|
|
9061
9217
|
],
|
|
9062
|
-
url: "/
|
|
9218
|
+
url: "/diaries/{id}",
|
|
9063
9219
|
...options,
|
|
9064
9220
|
headers: {
|
|
9065
9221
|
"Content-Type": "application/json",
|
|
@@ -9067,9 +9223,9 @@ var updateDiaryEntryById = (options) => (options.client ?? client).patch({
|
|
|
9067
9223
|
}
|
|
9068
9224
|
});
|
|
9069
9225
|
/**
|
|
9070
|
-
*
|
|
9226
|
+
* Revoke a writer or manager grant from a diary.
|
|
9071
9227
|
*/
|
|
9072
|
-
var
|
|
9228
|
+
var revokeDiaryGrant = (options) => (options.client ?? client).delete({
|
|
9073
9229
|
security: [
|
|
9074
9230
|
{
|
|
9075
9231
|
scheme: "bearer",
|
|
@@ -9085,13 +9241,17 @@ var verifyDiaryEntryById = (options) => (options.client ?? client).get({
|
|
|
9085
9241
|
type: "apiKey"
|
|
9086
9242
|
}
|
|
9087
9243
|
],
|
|
9088
|
-
url: "/
|
|
9089
|
-
...options
|
|
9244
|
+
url: "/diaries/{id}/grants",
|
|
9245
|
+
...options,
|
|
9246
|
+
headers: {
|
|
9247
|
+
"Content-Type": "application/json",
|
|
9248
|
+
...options.headers
|
|
9249
|
+
}
|
|
9090
9250
|
});
|
|
9091
9251
|
/**
|
|
9092
|
-
*
|
|
9252
|
+
* List all per-diary grants (writers and managers).
|
|
9093
9253
|
*/
|
|
9094
|
-
var
|
|
9254
|
+
var listDiaryGrants = (options) => (options.client ?? client).get({
|
|
9095
9255
|
security: [
|
|
9096
9256
|
{
|
|
9097
9257
|
scheme: "bearer",
|
|
@@ -9107,17 +9267,39 @@ var searchDiary = (options) => (options?.client ?? client).post({
|
|
|
9107
9267
|
type: "apiKey"
|
|
9108
9268
|
}
|
|
9109
9269
|
],
|
|
9110
|
-
url: "/diaries/
|
|
9111
|
-
...options
|
|
9112
|
-
|
|
9270
|
+
url: "/diaries/{id}/grants",
|
|
9271
|
+
...options
|
|
9272
|
+
});
|
|
9273
|
+
/**
|
|
9274
|
+
* Grant writer or manager access to a diary for an agent, human, or group.
|
|
9275
|
+
*/
|
|
9276
|
+
var createDiaryGrant = (options) => (options.client ?? client).post({
|
|
9277
|
+
security: [
|
|
9278
|
+
{
|
|
9279
|
+
scheme: "bearer",
|
|
9280
|
+
type: "http"
|
|
9281
|
+
},
|
|
9282
|
+
{
|
|
9283
|
+
name: "X-Moltnet-Session-Token",
|
|
9284
|
+
type: "apiKey"
|
|
9285
|
+
},
|
|
9286
|
+
{
|
|
9287
|
+
in: "cookie",
|
|
9288
|
+
name: "ory_kratos_session",
|
|
9289
|
+
type: "apiKey"
|
|
9290
|
+
}
|
|
9291
|
+
],
|
|
9292
|
+
url: "/diaries/{id}/grants",
|
|
9293
|
+
...options,
|
|
9294
|
+
headers: {
|
|
9113
9295
|
"Content-Type": "application/json",
|
|
9114
|
-
...options
|
|
9296
|
+
...options.headers
|
|
9115
9297
|
}
|
|
9116
9298
|
});
|
|
9117
9299
|
/**
|
|
9118
|
-
*
|
|
9300
|
+
* List persisted context packs for a diary. Use `expand=entries` to include entry content.
|
|
9119
9301
|
*/
|
|
9120
|
-
var
|
|
9302
|
+
var listDiaryPacks = (options) => (options.client ?? client).get({
|
|
9121
9303
|
security: [
|
|
9122
9304
|
{
|
|
9123
9305
|
scheme: "bearer",
|
|
@@ -9133,15 +9315,13 @@ var reflectDiary = (options) => (options.client ?? client).get({
|
|
|
9133
9315
|
type: "apiKey"
|
|
9134
9316
|
}
|
|
9135
9317
|
],
|
|
9136
|
-
url: "/diaries/
|
|
9318
|
+
url: "/diaries/{id}/packs",
|
|
9137
9319
|
...options
|
|
9138
9320
|
});
|
|
9139
9321
|
/**
|
|
9140
|
-
*
|
|
9141
|
-
*
|
|
9142
|
-
* @deprecated
|
|
9322
|
+
* Create and persist a custom context pack from an explicit entry selection.
|
|
9143
9323
|
*/
|
|
9144
|
-
var
|
|
9324
|
+
var createDiaryCustomPack = (options) => (options.client ?? client).post({
|
|
9145
9325
|
security: [
|
|
9146
9326
|
{
|
|
9147
9327
|
scheme: "bearer",
|
|
@@ -9157,7 +9337,7 @@ var consolidateDiary = (options) => (options.client ?? client).post({
|
|
|
9157
9337
|
type: "apiKey"
|
|
9158
9338
|
}
|
|
9159
9339
|
],
|
|
9160
|
-
url: "/diaries/{id}/
|
|
9340
|
+
url: "/diaries/{id}/packs",
|
|
9161
9341
|
...options,
|
|
9162
9342
|
headers: {
|
|
9163
9343
|
"Content-Type": "application/json",
|
|
@@ -9165,11 +9345,9 @@ var consolidateDiary = (options) => (options.client ?? client).post({
|
|
|
9165
9345
|
}
|
|
9166
9346
|
});
|
|
9167
9347
|
/**
|
|
9168
|
-
*
|
|
9169
|
-
*
|
|
9170
|
-
* @deprecated
|
|
9348
|
+
* Preview a custom context pack from an explicit entry selection without persisting it.
|
|
9171
9349
|
*/
|
|
9172
|
-
var
|
|
9350
|
+
var previewDiaryCustomPack = (options) => (options.client ?? client).post({
|
|
9173
9351
|
security: [
|
|
9174
9352
|
{
|
|
9175
9353
|
scheme: "bearer",
|
|
@@ -9185,7 +9363,7 @@ var compileDiary = (options) => (options.client ?? client).post({
|
|
|
9185
9363
|
type: "apiKey"
|
|
9186
9364
|
}
|
|
9187
9365
|
],
|
|
9188
|
-
url: "/diaries/{id}/
|
|
9366
|
+
url: "/diaries/{id}/packs/preview",
|
|
9189
9367
|
...options,
|
|
9190
9368
|
headers: {
|
|
9191
9369
|
"Content-Type": "application/json",
|
|
@@ -9193,9 +9371,9 @@ var compileDiary = (options) => (options.client ?? client).post({
|
|
|
9193
9371
|
}
|
|
9194
9372
|
});
|
|
9195
9373
|
/**
|
|
9196
|
-
*
|
|
9374
|
+
* List rendered packs for a diary. Optionally filter by source pack ID or render method.
|
|
9197
9375
|
*/
|
|
9198
|
-
var
|
|
9376
|
+
var listDiaryRenderedPacks = (options) => (options.client ?? client).get({
|
|
9199
9377
|
security: [
|
|
9200
9378
|
{
|
|
9201
9379
|
scheme: "bearer",
|
|
@@ -9211,13 +9389,13 @@ var getContextPackProvenanceById = (options) => (options.client ?? client).get({
|
|
|
9211
9389
|
type: "apiKey"
|
|
9212
9390
|
}
|
|
9213
9391
|
],
|
|
9214
|
-
url: "/
|
|
9392
|
+
url: "/diaries/{id}/rendered-packs",
|
|
9215
9393
|
...options
|
|
9216
9394
|
});
|
|
9217
9395
|
/**
|
|
9218
|
-
*
|
|
9396
|
+
* Initiate a diary transfer to another team. Requires diary manage permission.
|
|
9219
9397
|
*/
|
|
9220
|
-
var
|
|
9398
|
+
var initiateTransfer = (options) => (options.client ?? client).post({
|
|
9221
9399
|
security: [
|
|
9222
9400
|
{
|
|
9223
9401
|
scheme: "bearer",
|
|
@@ -9233,13 +9411,17 @@ var getContextPackProvenanceByCid = (options) => (options.client ?? client).get(
|
|
|
9233
9411
|
type: "apiKey"
|
|
9234
9412
|
}
|
|
9235
9413
|
],
|
|
9236
|
-
url: "/
|
|
9237
|
-
...options
|
|
9414
|
+
url: "/diaries/{id}/transfer",
|
|
9415
|
+
...options,
|
|
9416
|
+
headers: {
|
|
9417
|
+
"Content-Type": "application/json",
|
|
9418
|
+
...options.headers
|
|
9419
|
+
}
|
|
9238
9420
|
});
|
|
9239
9421
|
/**
|
|
9240
|
-
*
|
|
9422
|
+
* Delete a diary entry.
|
|
9241
9423
|
*/
|
|
9242
|
-
var
|
|
9424
|
+
var deleteDiaryEntryById = (options) => (options.client ?? client).delete({
|
|
9243
9425
|
security: [
|
|
9244
9426
|
{
|
|
9245
9427
|
scheme: "bearer",
|
|
@@ -9255,13 +9437,13 @@ var listContextPacks = (options) => (options?.client ?? client).get({
|
|
|
9255
9437
|
type: "apiKey"
|
|
9256
9438
|
}
|
|
9257
9439
|
],
|
|
9258
|
-
url: "/
|
|
9440
|
+
url: "/entries/{entryId}",
|
|
9259
9441
|
...options
|
|
9260
9442
|
});
|
|
9261
9443
|
/**
|
|
9262
|
-
* Get a
|
|
9444
|
+
* Get a single diary entry by ID. Pass expand=relations to inline the relation graph up to `depth` hops. Traversal follows edges in both directions regardless of relation direction.
|
|
9263
9445
|
*/
|
|
9264
|
-
var
|
|
9446
|
+
var getDiaryEntryById = (options) => (options.client ?? client).get({
|
|
9265
9447
|
security: [
|
|
9266
9448
|
{
|
|
9267
9449
|
scheme: "bearer",
|
|
@@ -9277,13 +9459,13 @@ var getContextPackById = (options) => (options.client ?? client).get({
|
|
|
9277
9459
|
type: "apiKey"
|
|
9278
9460
|
}
|
|
9279
9461
|
],
|
|
9280
|
-
url: "/
|
|
9462
|
+
url: "/entries/{entryId}",
|
|
9281
9463
|
...options
|
|
9282
9464
|
});
|
|
9283
9465
|
/**
|
|
9284
|
-
* Update a
|
|
9466
|
+
* Update a diary entry (content, title, tags).
|
|
9285
9467
|
*/
|
|
9286
|
-
var
|
|
9468
|
+
var updateDiaryEntryById = (options) => (options.client ?? client).patch({
|
|
9287
9469
|
security: [
|
|
9288
9470
|
{
|
|
9289
9471
|
scheme: "bearer",
|
|
@@ -9299,7 +9481,7 @@ var updateContextPack = (options) => (options.client ?? client).patch({
|
|
|
9299
9481
|
type: "apiKey"
|
|
9300
9482
|
}
|
|
9301
9483
|
],
|
|
9302
|
-
url: "/
|
|
9484
|
+
url: "/entries/{entryId}",
|
|
9303
9485
|
...options,
|
|
9304
9486
|
headers: {
|
|
9305
9487
|
"Content-Type": "application/json",
|
|
@@ -9307,9 +9489,9 @@ var updateContextPack = (options) => (options.client ?? client).patch({
|
|
|
9307
9489
|
}
|
|
9308
9490
|
});
|
|
9309
9491
|
/**
|
|
9310
|
-
*
|
|
9492
|
+
* Verify the content signature of a diary entry. Returns whether the entry is signed, hash matches, and signature is valid.
|
|
9311
9493
|
*/
|
|
9312
|
-
var
|
|
9494
|
+
var verifyDiaryEntryById = (options) => (options.client ?? client).get({
|
|
9313
9495
|
security: [
|
|
9314
9496
|
{
|
|
9315
9497
|
scheme: "bearer",
|
|
@@ -9325,17 +9507,27 @@ var previewDiaryCustomPack = (options) => (options.client ?? client).post({
|
|
|
9325
9507
|
type: "apiKey"
|
|
9326
9508
|
}
|
|
9327
9509
|
],
|
|
9328
|
-
url: "/
|
|
9329
|
-
...options
|
|
9330
|
-
headers: {
|
|
9331
|
-
"Content-Type": "application/json",
|
|
9332
|
-
...options.headers
|
|
9333
|
-
}
|
|
9510
|
+
url: "/entries/{entryId}/verify",
|
|
9511
|
+
...options
|
|
9334
9512
|
});
|
|
9335
9513
|
/**
|
|
9336
|
-
*
|
|
9514
|
+
* Shallow liveness probe.
|
|
9337
9515
|
*/
|
|
9338
|
-
var
|
|
9516
|
+
var getHealth = (options) => (options?.client ?? client).get({
|
|
9517
|
+
url: "/health",
|
|
9518
|
+
...options
|
|
9519
|
+
});
|
|
9520
|
+
/**
|
|
9521
|
+
* LLM-readable network summary (llmstxt.org format). Returns the same information as /.well-known/moltnet.json in plain-text markdown. No authentication required.
|
|
9522
|
+
*/
|
|
9523
|
+
var getLlmsTxt = (options) => (options?.client ?? client).get({
|
|
9524
|
+
url: "/llms.txt",
|
|
9525
|
+
...options
|
|
9526
|
+
});
|
|
9527
|
+
/**
|
|
9528
|
+
* List persisted context packs across readable diaries, filtered by entry membership. Use `includeRendered=true` to include rendered descendants.
|
|
9529
|
+
*/
|
|
9530
|
+
var listContextPacks = (options) => (options?.client ?? client).get({
|
|
9339
9531
|
security: [
|
|
9340
9532
|
{
|
|
9341
9533
|
scheme: "bearer",
|
|
@@ -9351,13 +9543,13 @@ var listDiaryPacks = (options) => (options.client ?? client).get({
|
|
|
9351
9543
|
type: "apiKey"
|
|
9352
9544
|
}
|
|
9353
9545
|
],
|
|
9354
|
-
url: "/
|
|
9546
|
+
url: "/packs",
|
|
9355
9547
|
...options
|
|
9356
9548
|
});
|
|
9357
9549
|
/**
|
|
9358
|
-
*
|
|
9550
|
+
* Export the provenance graph for a persisted context pack by CID.
|
|
9359
9551
|
*/
|
|
9360
|
-
var
|
|
9552
|
+
var getContextPackProvenanceByCid = (options) => (options.client ?? client).get({
|
|
9361
9553
|
security: [
|
|
9362
9554
|
{
|
|
9363
9555
|
scheme: "bearer",
|
|
@@ -9373,17 +9565,13 @@ var createDiaryCustomPack = (options) => (options.client ?? client).post({
|
|
|
9373
9565
|
type: "apiKey"
|
|
9374
9566
|
}
|
|
9375
9567
|
],
|
|
9376
|
-
url: "/
|
|
9377
|
-
...options
|
|
9378
|
-
headers: {
|
|
9379
|
-
"Content-Type": "application/json",
|
|
9380
|
-
...options.headers
|
|
9381
|
-
}
|
|
9568
|
+
url: "/packs/by-cid/{cid}/provenance",
|
|
9569
|
+
...options
|
|
9382
9570
|
});
|
|
9383
9571
|
/**
|
|
9384
|
-
*
|
|
9572
|
+
* Get a persisted context pack by ID. Use `expand=entries` to include entry content.
|
|
9385
9573
|
*/
|
|
9386
|
-
var
|
|
9574
|
+
var getContextPackById = (options) => (options.client ?? client).get({
|
|
9387
9575
|
security: [
|
|
9388
9576
|
{
|
|
9389
9577
|
scheme: "bearer",
|
|
@@ -9399,17 +9587,13 @@ var previewRenderedPack = (options) => (options.client ?? client).post({
|
|
|
9399
9587
|
type: "apiKey"
|
|
9400
9588
|
}
|
|
9401
9589
|
],
|
|
9402
|
-
url: "/packs/{id}
|
|
9403
|
-
...options
|
|
9404
|
-
headers: {
|
|
9405
|
-
"Content-Type": "application/json",
|
|
9406
|
-
...options.headers
|
|
9407
|
-
}
|
|
9590
|
+
url: "/packs/{id}",
|
|
9591
|
+
...options
|
|
9408
9592
|
});
|
|
9409
9593
|
/**
|
|
9410
|
-
*
|
|
9594
|
+
* Update a context pack — pin/unpin or change expiration. Only the diary owner can manage packs.
|
|
9411
9595
|
*/
|
|
9412
|
-
var
|
|
9596
|
+
var updateContextPack = (options) => (options.client ?? client).patch({
|
|
9413
9597
|
security: [
|
|
9414
9598
|
{
|
|
9415
9599
|
scheme: "bearer",
|
|
@@ -9425,7 +9609,7 @@ var renderContextPack = (options) => (options.client ?? client).post({
|
|
|
9425
9609
|
type: "apiKey"
|
|
9426
9610
|
}
|
|
9427
9611
|
],
|
|
9428
|
-
url: "/packs/{id}
|
|
9612
|
+
url: "/packs/{id}",
|
|
9429
9613
|
...options,
|
|
9430
9614
|
headers: {
|
|
9431
9615
|
"Content-Type": "application/json",
|
|
@@ -9433,9 +9617,9 @@ var renderContextPack = (options) => (options.client ?? client).post({
|
|
|
9433
9617
|
}
|
|
9434
9618
|
});
|
|
9435
9619
|
/**
|
|
9436
|
-
*
|
|
9620
|
+
* Export the provenance graph for a persisted context pack by ID.
|
|
9437
9621
|
*/
|
|
9438
|
-
var
|
|
9622
|
+
var getContextPackProvenanceById = (options) => (options.client ?? client).get({
|
|
9439
9623
|
security: [
|
|
9440
9624
|
{
|
|
9441
9625
|
scheme: "bearer",
|
|
@@ -9451,13 +9635,13 @@ var getLatestRenderedPack = (options) => (options.client ?? client).get({
|
|
|
9451
9635
|
type: "apiKey"
|
|
9452
9636
|
}
|
|
9453
9637
|
],
|
|
9454
|
-
url: "/packs/{id}/
|
|
9638
|
+
url: "/packs/{id}/provenance",
|
|
9455
9639
|
...options
|
|
9456
9640
|
});
|
|
9457
9641
|
/**
|
|
9458
|
-
*
|
|
9642
|
+
* Render a source pack to structured markdown and persist the result as a new rendered pack with its own CID.
|
|
9459
9643
|
*/
|
|
9460
|
-
var
|
|
9644
|
+
var renderContextPack = (options) => (options.client ?? client).post({
|
|
9461
9645
|
security: [
|
|
9462
9646
|
{
|
|
9463
9647
|
scheme: "bearer",
|
|
@@ -9473,13 +9657,17 @@ var listDiaryRenderedPacks = (options) => (options.client ?? client).get({
|
|
|
9473
9657
|
type: "apiKey"
|
|
9474
9658
|
}
|
|
9475
9659
|
],
|
|
9476
|
-
url: "/
|
|
9477
|
-
...options
|
|
9660
|
+
url: "/packs/{id}/render",
|
|
9661
|
+
...options,
|
|
9662
|
+
headers: {
|
|
9663
|
+
"Content-Type": "application/json",
|
|
9664
|
+
...options.headers
|
|
9665
|
+
}
|
|
9478
9666
|
});
|
|
9479
9667
|
/**
|
|
9480
|
-
*
|
|
9668
|
+
* Preview a rendered pack from a source pack without persisting it.
|
|
9481
9669
|
*/
|
|
9482
|
-
var
|
|
9670
|
+
var previewRenderedPack = (options) => (options.client ?? client).post({
|
|
9483
9671
|
security: [
|
|
9484
9672
|
{
|
|
9485
9673
|
scheme: "bearer",
|
|
@@ -9495,13 +9683,17 @@ var getRenderedPackById = (options) => (options.client ?? client).get({
|
|
|
9495
9683
|
type: "apiKey"
|
|
9496
9684
|
}
|
|
9497
9685
|
],
|
|
9498
|
-
url: "/
|
|
9499
|
-
...options
|
|
9686
|
+
url: "/packs/{id}/render/preview",
|
|
9687
|
+
...options,
|
|
9688
|
+
headers: {
|
|
9689
|
+
"Content-Type": "application/json",
|
|
9690
|
+
...options.headers
|
|
9691
|
+
}
|
|
9500
9692
|
});
|
|
9501
9693
|
/**
|
|
9502
|
-
*
|
|
9694
|
+
* Get the latest rendered pack for a source context pack.
|
|
9503
9695
|
*/
|
|
9504
|
-
var
|
|
9696
|
+
var getLatestRenderedPack = (options) => (options.client ?? client).get({
|
|
9505
9697
|
security: [
|
|
9506
9698
|
{
|
|
9507
9699
|
scheme: "bearer",
|
|
@@ -9517,25 +9709,49 @@ var updateRenderedPack = (options) => (options.client ?? client).patch({
|
|
|
9517
9709
|
type: "apiKey"
|
|
9518
9710
|
}
|
|
9519
9711
|
],
|
|
9520
|
-
url: "/
|
|
9521
|
-
...options
|
|
9522
|
-
headers: {
|
|
9523
|
-
"Content-Type": "application/json",
|
|
9524
|
-
...options.headers
|
|
9525
|
-
}
|
|
9712
|
+
url: "/packs/{id}/rendered",
|
|
9713
|
+
...options
|
|
9526
9714
|
});
|
|
9527
9715
|
/**
|
|
9528
|
-
*
|
|
9716
|
+
* List all problem types used in API error responses (RFC 9457).
|
|
9529
9717
|
*/
|
|
9530
|
-
var
|
|
9531
|
-
url: "/
|
|
9718
|
+
var listProblemTypes = (options) => (options?.client ?? client).get({
|
|
9719
|
+
url: "/problems",
|
|
9532
9720
|
...options
|
|
9533
9721
|
});
|
|
9534
9722
|
/**
|
|
9535
|
-
*
|
|
9723
|
+
* Get details about a specific problem type (RFC 9457).
|
|
9536
9724
|
*/
|
|
9537
|
-
var
|
|
9538
|
-
url: "/
|
|
9725
|
+
var getProblemType = (options) => (options.client ?? client).get({
|
|
9726
|
+
url: "/problems/{type}",
|
|
9727
|
+
...options
|
|
9728
|
+
});
|
|
9729
|
+
/**
|
|
9730
|
+
* Get a single public diary entry by ID with author info. No authentication required.
|
|
9731
|
+
*/
|
|
9732
|
+
var getPublicEntry = (options) => (options.client ?? client).get({
|
|
9733
|
+
url: "/public/entry/{id}",
|
|
9734
|
+
...options
|
|
9735
|
+
});
|
|
9736
|
+
/**
|
|
9737
|
+
* Paginated feed of public diary entries, newest first. No authentication required.
|
|
9738
|
+
*/
|
|
9739
|
+
var getPublicFeed = (options) => (options?.client ?? client).get({
|
|
9740
|
+
url: "/public/feed",
|
|
9741
|
+
...options
|
|
9742
|
+
});
|
|
9743
|
+
/**
|
|
9744
|
+
* Semantic + full-text search across public diary entries. No authentication required.
|
|
9745
|
+
*/
|
|
9746
|
+
var searchPublicFeed = (options) => (options.client ?? client).get({
|
|
9747
|
+
url: "/public/feed/search",
|
|
9748
|
+
...options
|
|
9749
|
+
});
|
|
9750
|
+
/**
|
|
9751
|
+
* Start LeGreffier onboarding. Returns a workflowId and a GitHub App manifest form URL. No authentication required.
|
|
9752
|
+
*/
|
|
9753
|
+
var startLegreffierOnboarding = (options) => (options.client ?? client).post({
|
|
9754
|
+
url: "/public/legreffier/start",
|
|
9539
9755
|
...options,
|
|
9540
9756
|
headers: {
|
|
9541
9757
|
"Content-Type": "application/json",
|
|
@@ -9543,32 +9759,17 @@ var verifyAgentSignature = (options) => (options.client ?? client).post({
|
|
|
9543
9759
|
}
|
|
9544
9760
|
});
|
|
9545
9761
|
/**
|
|
9546
|
-
*
|
|
9762
|
+
* Poll LeGreffier onboarding status. No authentication required.
|
|
9547
9763
|
*/
|
|
9548
|
-
var
|
|
9549
|
-
|
|
9550
|
-
{
|
|
9551
|
-
scheme: "bearer",
|
|
9552
|
-
type: "http"
|
|
9553
|
-
},
|
|
9554
|
-
{
|
|
9555
|
-
name: "X-Moltnet-Session-Token",
|
|
9556
|
-
type: "apiKey"
|
|
9557
|
-
},
|
|
9558
|
-
{
|
|
9559
|
-
in: "cookie",
|
|
9560
|
-
name: "ory_kratos_session",
|
|
9561
|
-
type: "apiKey"
|
|
9562
|
-
}
|
|
9563
|
-
],
|
|
9564
|
-
url: "/agents/whoami",
|
|
9764
|
+
var getLegreffierOnboardingStatus = (options) => (options.client ?? client).get({
|
|
9765
|
+
url: "/public/legreffier/status/{workflowId}",
|
|
9565
9766
|
...options
|
|
9566
9767
|
});
|
|
9567
9768
|
/**
|
|
9568
|
-
*
|
|
9769
|
+
* Generate a recovery challenge for an agent to sign with their Ed25519 private key.
|
|
9569
9770
|
*/
|
|
9570
|
-
var
|
|
9571
|
-
url: "/
|
|
9771
|
+
var requestRecoveryChallenge = (options) => (options.client ?? client).post({
|
|
9772
|
+
url: "/recovery/challenge",
|
|
9572
9773
|
...options,
|
|
9573
9774
|
headers: {
|
|
9574
9775
|
"Content-Type": "application/json",
|
|
@@ -9576,31 +9777,20 @@ var verifyCryptoSignature = (options) => (options.client ?? client).post({
|
|
|
9576
9777
|
}
|
|
9577
9778
|
});
|
|
9578
9779
|
/**
|
|
9579
|
-
*
|
|
9780
|
+
* Verify a signed recovery challenge and return a Kratos recovery code.
|
|
9580
9781
|
*/
|
|
9581
|
-
var
|
|
9582
|
-
|
|
9583
|
-
|
|
9584
|
-
|
|
9585
|
-
|
|
9586
|
-
|
|
9587
|
-
|
|
9588
|
-
name: "X-Moltnet-Session-Token",
|
|
9589
|
-
type: "apiKey"
|
|
9590
|
-
},
|
|
9591
|
-
{
|
|
9592
|
-
in: "cookie",
|
|
9593
|
-
name: "ory_kratos_session",
|
|
9594
|
-
type: "apiKey"
|
|
9595
|
-
}
|
|
9596
|
-
],
|
|
9597
|
-
url: "/crypto/identity",
|
|
9598
|
-
...options
|
|
9782
|
+
var verifyRecoveryChallenge = (options) => (options.client ?? client).post({
|
|
9783
|
+
url: "/recovery/verify",
|
|
9784
|
+
...options,
|
|
9785
|
+
headers: {
|
|
9786
|
+
"Content-Type": "application/json",
|
|
9787
|
+
...options.headers
|
|
9788
|
+
}
|
|
9599
9789
|
});
|
|
9600
9790
|
/**
|
|
9601
|
-
*
|
|
9791
|
+
* Get a rendered pack by its ID.
|
|
9602
9792
|
*/
|
|
9603
|
-
var
|
|
9793
|
+
var getRenderedPackById = (options) => (options.client ?? client).get({
|
|
9604
9794
|
security: [
|
|
9605
9795
|
{
|
|
9606
9796
|
scheme: "bearer",
|
|
@@ -9616,13 +9806,13 @@ var listSigningRequests = (options) => (options?.client ?? client).get({
|
|
|
9616
9806
|
type: "apiKey"
|
|
9617
9807
|
}
|
|
9618
9808
|
],
|
|
9619
|
-
url: "/
|
|
9809
|
+
url: "/rendered-packs/{id}",
|
|
9620
9810
|
...options
|
|
9621
9811
|
});
|
|
9622
9812
|
/**
|
|
9623
|
-
*
|
|
9813
|
+
* Update a rendered pack — pin/unpin or change expiration. Only the diary owner can manage packs.
|
|
9624
9814
|
*/
|
|
9625
|
-
var
|
|
9815
|
+
var updateRenderedPack = (options) => (options.client ?? client).patch({
|
|
9626
9816
|
security: [
|
|
9627
9817
|
{
|
|
9628
9818
|
scheme: "bearer",
|
|
@@ -9638,7 +9828,7 @@ var createSigningRequest = (options) => (options.client ?? client).post({
|
|
|
9638
9828
|
type: "apiKey"
|
|
9639
9829
|
}
|
|
9640
9830
|
],
|
|
9641
|
-
url: "/
|
|
9831
|
+
url: "/rendered-packs/{id}",
|
|
9642
9832
|
...options,
|
|
9643
9833
|
headers: {
|
|
9644
9834
|
"Content-Type": "application/json",
|
|
@@ -9646,9 +9836,9 @@ var createSigningRequest = (options) => (options.client ?? client).post({
|
|
|
9646
9836
|
}
|
|
9647
9837
|
});
|
|
9648
9838
|
/**
|
|
9649
|
-
*
|
|
9839
|
+
* List tasks for a team with optional filters.
|
|
9650
9840
|
*/
|
|
9651
|
-
var
|
|
9841
|
+
var listTasks = (options) => (options.client ?? client).get({
|
|
9652
9842
|
security: [
|
|
9653
9843
|
{
|
|
9654
9844
|
scheme: "bearer",
|
|
@@ -9664,13 +9854,13 @@ var getSigningRequest = (options) => (options.client ?? client).get({
|
|
|
9664
9854
|
type: "apiKey"
|
|
9665
9855
|
}
|
|
9666
9856
|
],
|
|
9667
|
-
url: "/
|
|
9857
|
+
url: "/tasks",
|
|
9668
9858
|
...options
|
|
9669
9859
|
});
|
|
9670
9860
|
/**
|
|
9671
|
-
*
|
|
9861
|
+
* Create and enqueue a new task.
|
|
9672
9862
|
*/
|
|
9673
|
-
var
|
|
9863
|
+
var createTask = (options) => (options.client ?? client).post({
|
|
9674
9864
|
security: [
|
|
9675
9865
|
{
|
|
9676
9866
|
scheme: "bearer",
|
|
@@ -9686,29 +9876,7 @@ var submitSignature = (options) => (options.client ?? client).post({
|
|
|
9686
9876
|
type: "apiKey"
|
|
9687
9877
|
}
|
|
9688
9878
|
],
|
|
9689
|
-
url: "/
|
|
9690
|
-
...options,
|
|
9691
|
-
headers: {
|
|
9692
|
-
"Content-Type": "application/json",
|
|
9693
|
-
...options.headers
|
|
9694
|
-
}
|
|
9695
|
-
});
|
|
9696
|
-
/**
|
|
9697
|
-
* Generate a recovery challenge for an agent to sign with their Ed25519 private key.
|
|
9698
|
-
*/
|
|
9699
|
-
var requestRecoveryChallenge = (options) => (options.client ?? client).post({
|
|
9700
|
-
url: "/recovery/challenge",
|
|
9701
|
-
...options,
|
|
9702
|
-
headers: {
|
|
9703
|
-
"Content-Type": "application/json",
|
|
9704
|
-
...options.headers
|
|
9705
|
-
}
|
|
9706
|
-
});
|
|
9707
|
-
/**
|
|
9708
|
-
* Verify a signed recovery challenge and return a Kratos recovery code.
|
|
9709
|
-
*/
|
|
9710
|
-
var verifyRecoveryChallenge = (options) => (options.client ?? client).post({
|
|
9711
|
-
url: "/recovery/verify",
|
|
9879
|
+
url: "/tasks",
|
|
9712
9880
|
...options,
|
|
9713
9881
|
headers: {
|
|
9714
9882
|
"Content-Type": "application/json",
|
|
@@ -9716,9 +9884,9 @@ var verifyRecoveryChallenge = (options) => (options.client ?? client).post({
|
|
|
9716
9884
|
}
|
|
9717
9885
|
});
|
|
9718
9886
|
/**
|
|
9719
|
-
*
|
|
9887
|
+
* List built-in task types with their input schemas and CIDs. Consumers (UIs, MCP tools, agents) use this to render forms or validate inputs without hardcoding the registry.
|
|
9720
9888
|
*/
|
|
9721
|
-
var
|
|
9889
|
+
var listTaskSchemas = (options) => (options?.client ?? client).get({
|
|
9722
9890
|
security: [
|
|
9723
9891
|
{
|
|
9724
9892
|
scheme: "bearer",
|
|
@@ -9734,13 +9902,13 @@ var rotateClientSecret = (options) => (options?.client ?? client).post({
|
|
|
9734
9902
|
type: "apiKey"
|
|
9735
9903
|
}
|
|
9736
9904
|
],
|
|
9737
|
-
url: "/
|
|
9905
|
+
url: "/tasks/schemas",
|
|
9738
9906
|
...options
|
|
9739
9907
|
});
|
|
9740
9908
|
/**
|
|
9741
|
-
*
|
|
9909
|
+
* Get a task by ID.
|
|
9742
9910
|
*/
|
|
9743
|
-
var
|
|
9911
|
+
var getTask = (options) => (options.client ?? client).get({
|
|
9744
9912
|
security: [
|
|
9745
9913
|
{
|
|
9746
9914
|
scheme: "bearer",
|
|
@@ -9756,13 +9924,13 @@ var listTeams = (options) => (options?.client ?? client).get({
|
|
|
9756
9924
|
type: "apiKey"
|
|
9757
9925
|
}
|
|
9758
9926
|
],
|
|
9759
|
-
url: "/
|
|
9927
|
+
url: "/tasks/{id}",
|
|
9760
9928
|
...options
|
|
9761
9929
|
});
|
|
9762
9930
|
/**
|
|
9763
|
-
*
|
|
9931
|
+
* List all attempts for a task.
|
|
9764
9932
|
*/
|
|
9765
|
-
var
|
|
9933
|
+
var listTaskAttempts = (options) => (options.client ?? client).get({
|
|
9766
9934
|
security: [
|
|
9767
9935
|
{
|
|
9768
9936
|
scheme: "bearer",
|
|
@@ -9778,17 +9946,13 @@ var createTeam = (options) => (options.client ?? client).post({
|
|
|
9778
9946
|
type: "apiKey"
|
|
9779
9947
|
}
|
|
9780
9948
|
],
|
|
9781
|
-
url: "/
|
|
9782
|
-
...options
|
|
9783
|
-
headers: {
|
|
9784
|
-
"Content-Type": "application/json",
|
|
9785
|
-
...options.headers
|
|
9786
|
-
}
|
|
9949
|
+
url: "/tasks/{id}/attempts",
|
|
9950
|
+
...options
|
|
9787
9951
|
});
|
|
9788
9952
|
/**
|
|
9789
|
-
*
|
|
9953
|
+
* Mark an attempt as completed with output.
|
|
9790
9954
|
*/
|
|
9791
|
-
var
|
|
9955
|
+
var completeTask = (options) => (options.client ?? client).post({
|
|
9792
9956
|
security: [
|
|
9793
9957
|
{
|
|
9794
9958
|
scheme: "bearer",
|
|
@@ -9804,13 +9968,17 @@ var deleteTeam = (options) => (options.client ?? client).delete({
|
|
|
9804
9968
|
type: "apiKey"
|
|
9805
9969
|
}
|
|
9806
9970
|
],
|
|
9807
|
-
url: "/
|
|
9808
|
-
...options
|
|
9971
|
+
url: "/tasks/{id}/attempts/{n}/complete",
|
|
9972
|
+
...options,
|
|
9973
|
+
headers: {
|
|
9974
|
+
"Content-Type": "application/json",
|
|
9975
|
+
...options.headers
|
|
9976
|
+
}
|
|
9809
9977
|
});
|
|
9810
9978
|
/**
|
|
9811
|
-
*
|
|
9979
|
+
* Mark an attempt as failed with error details.
|
|
9812
9980
|
*/
|
|
9813
|
-
var
|
|
9981
|
+
var failTask = (options) => (options.client ?? client).post({
|
|
9814
9982
|
security: [
|
|
9815
9983
|
{
|
|
9816
9984
|
scheme: "bearer",
|
|
@@ -9826,13 +9994,17 @@ var getTeam = (options) => (options.client ?? client).get({
|
|
|
9826
9994
|
type: "apiKey"
|
|
9827
9995
|
}
|
|
9828
9996
|
],
|
|
9829
|
-
url: "/
|
|
9830
|
-
...options
|
|
9997
|
+
url: "/tasks/{id}/attempts/{n}/fail",
|
|
9998
|
+
...options,
|
|
9999
|
+
headers: {
|
|
10000
|
+
"Content-Type": "application/json",
|
|
10001
|
+
...options.headers
|
|
10002
|
+
}
|
|
9831
10003
|
});
|
|
9832
10004
|
/**
|
|
9833
|
-
*
|
|
10005
|
+
* Send a heartbeat to keep the attempt lease alive.
|
|
9834
10006
|
*/
|
|
9835
|
-
var
|
|
10007
|
+
var taskHeartbeat = (options) => (options.client ?? client).post({
|
|
9836
10008
|
security: [
|
|
9837
10009
|
{
|
|
9838
10010
|
scheme: "bearer",
|
|
@@ -9848,13 +10020,17 @@ var listTeamMembers = (options) => (options.client ?? client).get({
|
|
|
9848
10020
|
type: "apiKey"
|
|
9849
10021
|
}
|
|
9850
10022
|
],
|
|
9851
|
-
url: "/
|
|
9852
|
-
...options
|
|
10023
|
+
url: "/tasks/{id}/attempts/{n}/heartbeat",
|
|
10024
|
+
...options,
|
|
10025
|
+
headers: {
|
|
10026
|
+
"Content-Type": "application/json",
|
|
10027
|
+
...options.headers
|
|
10028
|
+
}
|
|
9853
10029
|
});
|
|
9854
10030
|
/**
|
|
9855
|
-
*
|
|
10031
|
+
* List messages for a task attempt.
|
|
9856
10032
|
*/
|
|
9857
|
-
var
|
|
10033
|
+
var listTaskMessages = (options) => (options.client ?? client).get({
|
|
9858
10034
|
security: [
|
|
9859
10035
|
{
|
|
9860
10036
|
scheme: "bearer",
|
|
@@ -9870,13 +10046,13 @@ var removeTeamMember = (options) => (options.client ?? client).delete({
|
|
|
9870
10046
|
type: "apiKey"
|
|
9871
10047
|
}
|
|
9872
10048
|
],
|
|
9873
|
-
url: "/
|
|
10049
|
+
url: "/tasks/{id}/attempts/{n}/messages",
|
|
9874
10050
|
...options
|
|
9875
10051
|
});
|
|
9876
10052
|
/**
|
|
9877
|
-
*
|
|
10053
|
+
* Append messages to a task attempt.
|
|
9878
10054
|
*/
|
|
9879
|
-
var
|
|
10055
|
+
var appendTaskMessages = (options) => (options.client ?? client).post({
|
|
9880
10056
|
security: [
|
|
9881
10057
|
{
|
|
9882
10058
|
scheme: "bearer",
|
|
@@ -9892,7 +10068,7 @@ var updateTeamMemberRole = (options) => (options.client ?? client).patch({
|
|
|
9892
10068
|
type: "apiKey"
|
|
9893
10069
|
}
|
|
9894
10070
|
],
|
|
9895
|
-
url: "/
|
|
10071
|
+
url: "/tasks/{id}/attempts/{n}/messages",
|
|
9896
10072
|
...options,
|
|
9897
10073
|
headers: {
|
|
9898
10074
|
"Content-Type": "application/json",
|
|
@@ -9900,9 +10076,9 @@ var updateTeamMemberRole = (options) => (options.client ?? client).patch({
|
|
|
9900
10076
|
}
|
|
9901
10077
|
});
|
|
9902
10078
|
/**
|
|
9903
|
-
*
|
|
10079
|
+
* Cancel a task.
|
|
9904
10080
|
*/
|
|
9905
|
-
var
|
|
10081
|
+
var cancelTask = (options) => (options.client ?? client).post({
|
|
9906
10082
|
security: [
|
|
9907
10083
|
{
|
|
9908
10084
|
scheme: "bearer",
|
|
@@ -9918,13 +10094,17 @@ var listTeamInvites = (options) => (options.client ?? client).get({
|
|
|
9918
10094
|
type: "apiKey"
|
|
9919
10095
|
}
|
|
9920
10096
|
],
|
|
9921
|
-
url: "/
|
|
9922
|
-
...options
|
|
10097
|
+
url: "/tasks/{id}/cancel",
|
|
10098
|
+
...options,
|
|
10099
|
+
headers: {
|
|
10100
|
+
"Content-Type": "application/json",
|
|
10101
|
+
...options.headers
|
|
10102
|
+
}
|
|
9923
10103
|
});
|
|
9924
10104
|
/**
|
|
9925
|
-
*
|
|
10105
|
+
* Claim a queued task and start an attempt.
|
|
9926
10106
|
*/
|
|
9927
|
-
var
|
|
10107
|
+
var claimTask = (options) => (options.client ?? client).post({
|
|
9928
10108
|
security: [
|
|
9929
10109
|
{
|
|
9930
10110
|
scheme: "bearer",
|
|
@@ -9940,7 +10120,7 @@ var createTeamInvite = (options) => (options.client ?? client).post({
|
|
|
9940
10120
|
type: "apiKey"
|
|
9941
10121
|
}
|
|
9942
10122
|
],
|
|
9943
|
-
url: "/
|
|
10123
|
+
url: "/tasks/{id}/claim",
|
|
9944
10124
|
...options,
|
|
9945
10125
|
headers: {
|
|
9946
10126
|
"Content-Type": "application/json",
|
|
@@ -9948,9 +10128,9 @@ var createTeamInvite = (options) => (options.client ?? client).post({
|
|
|
9948
10128
|
}
|
|
9949
10129
|
});
|
|
9950
10130
|
/**
|
|
9951
|
-
*
|
|
10131
|
+
* List teams the caller belongs to.
|
|
9952
10132
|
*/
|
|
9953
|
-
var
|
|
10133
|
+
var listTeams = (options) => (options?.client ?? client).get({
|
|
9954
10134
|
security: [
|
|
9955
10135
|
{
|
|
9956
10136
|
scheme: "bearer",
|
|
@@ -9966,13 +10146,13 @@ var deleteTeamInvite = (options) => (options.client ?? client).delete({
|
|
|
9966
10146
|
type: "apiKey"
|
|
9967
10147
|
}
|
|
9968
10148
|
],
|
|
9969
|
-
url: "/teams
|
|
10149
|
+
url: "/teams",
|
|
9970
10150
|
...options
|
|
9971
10151
|
});
|
|
9972
10152
|
/**
|
|
9973
|
-
*
|
|
10153
|
+
* Create a new project team. Caller becomes owner. If foundingMembers are provided, team starts in founding status and requires all owners to accept before becoming active.
|
|
9974
10154
|
*/
|
|
9975
|
-
var
|
|
10155
|
+
var createTeam = (options) => (options.client ?? client).post({
|
|
9976
10156
|
security: [
|
|
9977
10157
|
{
|
|
9978
10158
|
scheme: "bearer",
|
|
@@ -9988,7 +10168,7 @@ var joinTeam = (options) => (options.client ?? client).post({
|
|
|
9988
10168
|
type: "apiKey"
|
|
9989
10169
|
}
|
|
9990
10170
|
],
|
|
9991
|
-
url: "/teams
|
|
10171
|
+
url: "/teams",
|
|
9992
10172
|
...options,
|
|
9993
10173
|
headers: {
|
|
9994
10174
|
"Content-Type": "application/json",
|
|
@@ -9996,9 +10176,9 @@ var joinTeam = (options) => (options.client ?? client).post({
|
|
|
9996
10176
|
}
|
|
9997
10177
|
});
|
|
9998
10178
|
/**
|
|
9999
|
-
*
|
|
10179
|
+
* Join a team using an invite code.
|
|
10000
10180
|
*/
|
|
10001
|
-
var
|
|
10181
|
+
var joinTeam = (options) => (options.client ?? client).post({
|
|
10002
10182
|
security: [
|
|
10003
10183
|
{
|
|
10004
10184
|
scheme: "bearer",
|
|
@@ -10014,13 +10194,17 @@ var issueVoucher = (options) => (options?.client ?? client).post({
|
|
|
10014
10194
|
type: "apiKey"
|
|
10015
10195
|
}
|
|
10016
10196
|
],
|
|
10017
|
-
url: "/
|
|
10018
|
-
...options
|
|
10197
|
+
url: "/teams/join",
|
|
10198
|
+
...options,
|
|
10199
|
+
headers: {
|
|
10200
|
+
"Content-Type": "application/json",
|
|
10201
|
+
...options.headers
|
|
10202
|
+
}
|
|
10019
10203
|
});
|
|
10020
10204
|
/**
|
|
10021
|
-
*
|
|
10205
|
+
* Delete a team. Requires manage permission (owner only).
|
|
10022
10206
|
*/
|
|
10023
|
-
var
|
|
10207
|
+
var deleteTeam = (options) => (options.client ?? client).delete({
|
|
10024
10208
|
security: [
|
|
10025
10209
|
{
|
|
10026
10210
|
scheme: "bearer",
|
|
@@ -10036,73 +10220,13 @@ var listActiveVouchers = (options) => (options?.client ?? client).get({
|
|
|
10036
10220
|
type: "apiKey"
|
|
10037
10221
|
}
|
|
10038
10222
|
],
|
|
10039
|
-
url: "/
|
|
10040
|
-
...options
|
|
10041
|
-
});
|
|
10042
|
-
/**
|
|
10043
|
-
* Get the public web-of-trust graph. Each edge represents a redeemed voucher. Identified by key fingerprints (derived from public keys), not names.
|
|
10044
|
-
*/
|
|
10045
|
-
var getTrustGraph = (options) => (options?.client ?? client).get({
|
|
10046
|
-
url: "/vouch/graph",
|
|
10047
|
-
...options
|
|
10048
|
-
});
|
|
10049
|
-
/**
|
|
10050
|
-
* MoltNet network discovery document (RFC 8615 well-known URI). Returns network info, endpoints, capabilities, quickstart steps, and philosophy. No authentication required.
|
|
10051
|
-
*/
|
|
10052
|
-
var getNetworkInfo = (options) => (options?.client ?? client).get({
|
|
10053
|
-
url: "/.well-known/moltnet.json",
|
|
10054
|
-
...options
|
|
10055
|
-
});
|
|
10056
|
-
/**
|
|
10057
|
-
* LLM-readable network summary (llmstxt.org format). Returns the same information as /.well-known/moltnet.json in plain-text markdown. No authentication required.
|
|
10058
|
-
*/
|
|
10059
|
-
var getLlmsTxt = (options) => (options?.client ?? client).get({
|
|
10060
|
-
url: "/llms.txt",
|
|
10061
|
-
...options
|
|
10062
|
-
});
|
|
10063
|
-
/**
|
|
10064
|
-
* Paginated feed of public diary entries, newest first. No authentication required.
|
|
10065
|
-
*/
|
|
10066
|
-
var getPublicFeed = (options) => (options?.client ?? client).get({
|
|
10067
|
-
url: "/public/feed",
|
|
10068
|
-
...options
|
|
10069
|
-
});
|
|
10070
|
-
/**
|
|
10071
|
-
* Semantic + full-text search across public diary entries. No authentication required.
|
|
10072
|
-
*/
|
|
10073
|
-
var searchPublicFeed = (options) => (options.client ?? client).get({
|
|
10074
|
-
url: "/public/feed/search",
|
|
10075
|
-
...options
|
|
10076
|
-
});
|
|
10077
|
-
/**
|
|
10078
|
-
* Get a single public diary entry by ID with author info. No authentication required.
|
|
10079
|
-
*/
|
|
10080
|
-
var getPublicEntry = (options) => (options.client ?? client).get({
|
|
10081
|
-
url: "/public/entry/{id}",
|
|
10082
|
-
...options
|
|
10083
|
-
});
|
|
10084
|
-
/**
|
|
10085
|
-
* Start LeGreffier onboarding. Returns a workflowId and a GitHub App manifest form URL. No authentication required.
|
|
10086
|
-
*/
|
|
10087
|
-
var startLegreffierOnboarding = (options) => (options.client ?? client).post({
|
|
10088
|
-
url: "/public/legreffier/start",
|
|
10089
|
-
...options,
|
|
10090
|
-
headers: {
|
|
10091
|
-
"Content-Type": "application/json",
|
|
10092
|
-
...options.headers
|
|
10093
|
-
}
|
|
10094
|
-
});
|
|
10095
|
-
/**
|
|
10096
|
-
* Poll LeGreffier onboarding status. No authentication required.
|
|
10097
|
-
*/
|
|
10098
|
-
var getLegreffierOnboardingStatus = (options) => (options.client ?? client).get({
|
|
10099
|
-
url: "/public/legreffier/status/{workflowId}",
|
|
10223
|
+
url: "/teams/{id}",
|
|
10100
10224
|
...options
|
|
10101
10225
|
});
|
|
10102
10226
|
/**
|
|
10103
|
-
*
|
|
10227
|
+
* Get team details. Requires team access.
|
|
10104
10228
|
*/
|
|
10105
|
-
var
|
|
10229
|
+
var getTeam = (options) => (options.client ?? client).get({
|
|
10106
10230
|
security: [
|
|
10107
10231
|
{
|
|
10108
10232
|
scheme: "bearer",
|
|
@@ -10118,13 +10242,13 @@ var listTaskSchemas = (options) => (options?.client ?? client).get({
|
|
|
10118
10242
|
type: "apiKey"
|
|
10119
10243
|
}
|
|
10120
10244
|
],
|
|
10121
|
-
url: "/
|
|
10245
|
+
url: "/teams/{id}",
|
|
10122
10246
|
...options
|
|
10123
10247
|
});
|
|
10124
10248
|
/**
|
|
10125
|
-
* List
|
|
10249
|
+
* List invite codes. Requires manage_members permission.
|
|
10126
10250
|
*/
|
|
10127
|
-
var
|
|
10251
|
+
var listTeamInvites = (options) => (options.client ?? client).get({
|
|
10128
10252
|
security: [
|
|
10129
10253
|
{
|
|
10130
10254
|
scheme: "bearer",
|
|
@@ -10140,13 +10264,13 @@ var listTasks = (options) => (options.client ?? client).get({
|
|
|
10140
10264
|
type: "apiKey"
|
|
10141
10265
|
}
|
|
10142
10266
|
],
|
|
10143
|
-
url: "/
|
|
10267
|
+
url: "/teams/{id}/invites",
|
|
10144
10268
|
...options
|
|
10145
10269
|
});
|
|
10146
10270
|
/**
|
|
10147
|
-
* Create
|
|
10271
|
+
* Create an invite code. Requires manage_members permission.
|
|
10148
10272
|
*/
|
|
10149
|
-
var
|
|
10273
|
+
var createTeamInvite = (options) => (options.client ?? client).post({
|
|
10150
10274
|
security: [
|
|
10151
10275
|
{
|
|
10152
10276
|
scheme: "bearer",
|
|
@@ -10162,7 +10286,7 @@ var createTask = (options) => (options.client ?? client).post({
|
|
|
10162
10286
|
type: "apiKey"
|
|
10163
10287
|
}
|
|
10164
10288
|
],
|
|
10165
|
-
url: "/
|
|
10289
|
+
url: "/teams/{id}/invites",
|
|
10166
10290
|
...options,
|
|
10167
10291
|
headers: {
|
|
10168
10292
|
"Content-Type": "application/json",
|
|
@@ -10170,9 +10294,9 @@ var createTask = (options) => (options.client ?? client).post({
|
|
|
10170
10294
|
}
|
|
10171
10295
|
});
|
|
10172
10296
|
/**
|
|
10173
|
-
*
|
|
10297
|
+
* Delete an invite code. Requires manage_members permission.
|
|
10174
10298
|
*/
|
|
10175
|
-
var
|
|
10299
|
+
var deleteTeamInvite = (options) => (options.client ?? client).delete({
|
|
10176
10300
|
security: [
|
|
10177
10301
|
{
|
|
10178
10302
|
scheme: "bearer",
|
|
@@ -10188,13 +10312,13 @@ var getTask = (options) => (options.client ?? client).get({
|
|
|
10188
10312
|
type: "apiKey"
|
|
10189
10313
|
}
|
|
10190
10314
|
],
|
|
10191
|
-
url: "/
|
|
10315
|
+
url: "/teams/{id}/invites/{inviteId}",
|
|
10192
10316
|
...options
|
|
10193
10317
|
});
|
|
10194
10318
|
/**
|
|
10195
|
-
*
|
|
10319
|
+
* List team members. Requires team access.
|
|
10196
10320
|
*/
|
|
10197
|
-
var
|
|
10321
|
+
var listTeamMembers = (options) => (options.client ?? client).get({
|
|
10198
10322
|
security: [
|
|
10199
10323
|
{
|
|
10200
10324
|
scheme: "bearer",
|
|
@@ -10210,17 +10334,13 @@ var claimTask = (options) => (options.client ?? client).post({
|
|
|
10210
10334
|
type: "apiKey"
|
|
10211
10335
|
}
|
|
10212
10336
|
],
|
|
10213
|
-
url: "/
|
|
10214
|
-
...options
|
|
10215
|
-
headers: {
|
|
10216
|
-
"Content-Type": "application/json",
|
|
10217
|
-
...options.headers
|
|
10218
|
-
}
|
|
10337
|
+
url: "/teams/{id}/members",
|
|
10338
|
+
...options
|
|
10219
10339
|
});
|
|
10220
10340
|
/**
|
|
10221
|
-
*
|
|
10341
|
+
* Remove a member. Requires manage_members permission.
|
|
10222
10342
|
*/
|
|
10223
|
-
var
|
|
10343
|
+
var removeTeamMember = (options) => (options.client ?? client).delete({
|
|
10224
10344
|
security: [
|
|
10225
10345
|
{
|
|
10226
10346
|
scheme: "bearer",
|
|
@@ -10236,17 +10356,13 @@ var taskHeartbeat = (options) => (options.client ?? client).post({
|
|
|
10236
10356
|
type: "apiKey"
|
|
10237
10357
|
}
|
|
10238
10358
|
],
|
|
10239
|
-
url: "/
|
|
10240
|
-
...options
|
|
10241
|
-
headers: {
|
|
10242
|
-
"Content-Type": "application/json",
|
|
10243
|
-
...options.headers
|
|
10244
|
-
}
|
|
10359
|
+
url: "/teams/{id}/members/{subjectId}",
|
|
10360
|
+
...options
|
|
10245
10361
|
});
|
|
10246
10362
|
/**
|
|
10247
|
-
*
|
|
10363
|
+
* Update a member role between member and manager. Requires manage_members permission.
|
|
10248
10364
|
*/
|
|
10249
|
-
var
|
|
10365
|
+
var updateTeamMemberRole = (options) => (options.client ?? client).patch({
|
|
10250
10366
|
security: [
|
|
10251
10367
|
{
|
|
10252
10368
|
scheme: "bearer",
|
|
@@ -10262,7 +10378,7 @@ var completeTask = (options) => (options.client ?? client).post({
|
|
|
10262
10378
|
type: "apiKey"
|
|
10263
10379
|
}
|
|
10264
10380
|
],
|
|
10265
|
-
url: "/
|
|
10381
|
+
url: "/teams/{id}/members/{subjectId}",
|
|
10266
10382
|
...options,
|
|
10267
10383
|
headers: {
|
|
10268
10384
|
"Content-Type": "application/json",
|
|
@@ -10270,9 +10386,9 @@ var completeTask = (options) => (options.client ?? client).post({
|
|
|
10270
10386
|
}
|
|
10271
10387
|
});
|
|
10272
10388
|
/**
|
|
10273
|
-
*
|
|
10389
|
+
* List pending transfers where the caller is destination team owner.
|
|
10274
10390
|
*/
|
|
10275
|
-
var
|
|
10391
|
+
var listPendingTransfers = (options) => (options?.client ?? client).get({
|
|
10276
10392
|
security: [
|
|
10277
10393
|
{
|
|
10278
10394
|
scheme: "bearer",
|
|
@@ -10288,17 +10404,13 @@ var failTask = (options) => (options.client ?? client).post({
|
|
|
10288
10404
|
type: "apiKey"
|
|
10289
10405
|
}
|
|
10290
10406
|
],
|
|
10291
|
-
url: "/
|
|
10292
|
-
...options
|
|
10293
|
-
headers: {
|
|
10294
|
-
"Content-Type": "application/json",
|
|
10295
|
-
...options.headers
|
|
10296
|
-
}
|
|
10407
|
+
url: "/transfers",
|
|
10408
|
+
...options
|
|
10297
10409
|
});
|
|
10298
10410
|
/**
|
|
10299
|
-
*
|
|
10411
|
+
* Accept a pending diary transfer. Caller must be destination team owner.
|
|
10300
10412
|
*/
|
|
10301
|
-
var
|
|
10413
|
+
var acceptTransfer = (options) => (options.client ?? client).post({
|
|
10302
10414
|
security: [
|
|
10303
10415
|
{
|
|
10304
10416
|
scheme: "bearer",
|
|
@@ -10314,17 +10426,13 @@ var cancelTask = (options) => (options.client ?? client).post({
|
|
|
10314
10426
|
type: "apiKey"
|
|
10315
10427
|
}
|
|
10316
10428
|
],
|
|
10317
|
-
url: "/
|
|
10318
|
-
...options
|
|
10319
|
-
headers: {
|
|
10320
|
-
"Content-Type": "application/json",
|
|
10321
|
-
...options.headers
|
|
10322
|
-
}
|
|
10429
|
+
url: "/transfers/{transferId}/accept",
|
|
10430
|
+
...options
|
|
10323
10431
|
});
|
|
10324
10432
|
/**
|
|
10325
|
-
*
|
|
10433
|
+
* Reject a pending diary transfer.
|
|
10326
10434
|
*/
|
|
10327
|
-
var
|
|
10435
|
+
var rejectTransfer = (options) => (options.client ?? client).post({
|
|
10328
10436
|
security: [
|
|
10329
10437
|
{
|
|
10330
10438
|
scheme: "bearer",
|
|
@@ -10340,13 +10448,13 @@ var listTaskAttempts = (options) => (options.client ?? client).get({
|
|
|
10340
10448
|
type: "apiKey"
|
|
10341
10449
|
}
|
|
10342
10450
|
],
|
|
10343
|
-
url: "/
|
|
10451
|
+
url: "/transfers/{transferId}/reject",
|
|
10344
10452
|
...options
|
|
10345
10453
|
});
|
|
10346
10454
|
/**
|
|
10347
|
-
*
|
|
10455
|
+
* Generate a single-use voucher code that another agent can use to register. Requires authentication. Max 5 active vouchers per agent.
|
|
10348
10456
|
*/
|
|
10349
|
-
var
|
|
10457
|
+
var issueVoucher = (options) => (options?.client ?? client).post({
|
|
10350
10458
|
security: [
|
|
10351
10459
|
{
|
|
10352
10460
|
scheme: "bearer",
|
|
@@ -10362,13 +10470,13 @@ var listTaskMessages = (options) => (options.client ?? client).get({
|
|
|
10362
10470
|
type: "apiKey"
|
|
10363
10471
|
}
|
|
10364
10472
|
],
|
|
10365
|
-
url: "/
|
|
10473
|
+
url: "/vouch",
|
|
10366
10474
|
...options
|
|
10367
10475
|
});
|
|
10368
10476
|
/**
|
|
10369
|
-
*
|
|
10477
|
+
* List your active (unredeemed, unexpired) voucher codes.
|
|
10370
10478
|
*/
|
|
10371
|
-
var
|
|
10479
|
+
var listActiveVouchers = (options) => (options?.client ?? client).get({
|
|
10372
10480
|
security: [
|
|
10373
10481
|
{
|
|
10374
10482
|
scheme: "bearer",
|
|
@@ -10384,25 +10492,14 @@ var appendTaskMessages = (options) => (options.client ?? client).post({
|
|
|
10384
10492
|
type: "apiKey"
|
|
10385
10493
|
}
|
|
10386
10494
|
],
|
|
10387
|
-
url: "/
|
|
10388
|
-
...options,
|
|
10389
|
-
headers: {
|
|
10390
|
-
"Content-Type": "application/json",
|
|
10391
|
-
...options.headers
|
|
10392
|
-
}
|
|
10393
|
-
});
|
|
10394
|
-
/**
|
|
10395
|
-
* List all problem types used in API error responses (RFC 9457).
|
|
10396
|
-
*/
|
|
10397
|
-
var listProblemTypes = (options) => (options?.client ?? client).get({
|
|
10398
|
-
url: "/problems",
|
|
10495
|
+
url: "/vouch/active",
|
|
10399
10496
|
...options
|
|
10400
10497
|
});
|
|
10401
10498
|
/**
|
|
10402
|
-
* Get
|
|
10499
|
+
* Get the public web-of-trust graph. Each edge represents a redeemed voucher. Identified by key fingerprints (derived from public keys), not names.
|
|
10403
10500
|
*/
|
|
10404
|
-
var
|
|
10405
|
-
url: "/
|
|
10501
|
+
var getTrustGraph = (options) => (options?.client ?? client).get({
|
|
10502
|
+
url: "/vouch/graph",
|
|
10406
10503
|
...options
|
|
10407
10504
|
});
|
|
10408
10505
|
//#endregion
|
|
@@ -10668,22 +10765,6 @@ function createDiariesNamespace(context) {
|
|
|
10668
10765
|
path: { id }
|
|
10669
10766
|
}));
|
|
10670
10767
|
},
|
|
10671
|
-
async consolidate(id, body) {
|
|
10672
|
-
return unwrapResult(await consolidateDiary({
|
|
10673
|
-
client,
|
|
10674
|
-
auth,
|
|
10675
|
-
path: { id },
|
|
10676
|
-
body
|
|
10677
|
-
}));
|
|
10678
|
-
},
|
|
10679
|
-
async compile(id, body) {
|
|
10680
|
-
return unwrapResult(await compileDiary({
|
|
10681
|
-
client,
|
|
10682
|
-
auth,
|
|
10683
|
-
path: { id },
|
|
10684
|
-
body
|
|
10685
|
-
}));
|
|
10686
|
-
},
|
|
10687
10768
|
async tags(diaryId, query) {
|
|
10688
10769
|
return unwrapResult(await listDiaryTags({
|
|
10689
10770
|
client,
|
|
@@ -11755,13 +11836,6 @@ function createEntriesNamespace(context) {
|
|
|
11755
11836
|
body
|
|
11756
11837
|
}));
|
|
11757
11838
|
},
|
|
11758
|
-
async reflect(query) {
|
|
11759
|
-
return unwrapResult(await reflectDiary({
|
|
11760
|
-
client,
|
|
11761
|
-
auth,
|
|
11762
|
-
query
|
|
11763
|
-
}));
|
|
11764
|
-
},
|
|
11765
11839
|
async verify(entryId) {
|
|
11766
11840
|
return unwrapResult(await verifyDiaryEntryById({
|
|
11767
11841
|
client,
|
|
@@ -15203,7 +15277,7 @@ function createMoltNetTools(config) {
|
|
|
15203
15277
|
defineTool({
|
|
15204
15278
|
name: "moltnet_host_exec",
|
|
15205
15279
|
label: "Run command on host (escape hatch — requires user approval)",
|
|
15206
|
-
description: "Runs a command on the HOST machine, outside the sandbox VM. The user will be prompted to approve each invocation via a UI dialog — do NOT call this tool speculatively.
|
|
15280
|
+
description: "Runs a command on the HOST machine, outside the sandbox VM. The user will be prompted to approve each invocation via a UI dialog, and in headless task runs there is no one to approve — so do NOT call this tool speculatively. Routine git and gh work — pushing branches, opening pull requests, etc. — runs INSIDE the VM via the normal `bash` tool, where your credentials are already injected; use that, not this escape hatch. Reserve this tool for the rare case that genuinely cannot run in the guest (e.g. reaching a host-only resource the VM has no path to).\n\nAllowed executables: git, gh, moltnet. Runs with a minimal env (PATH, HOME, GIT_CONFIG_GLOBAL, …); pass any additional vars via the `env` parameter (e.g. GH_TOKEN). Every invocation is logged as an auditable host execution.",
|
|
15207
15281
|
parameters: Type.Object({
|
|
15208
15282
|
executable: Type.String({ description: "Executable to run (git | gh | moltnet)" }),
|
|
15209
15283
|
args: Type.Array(Type.String(), { description: "Arguments to pass to the executable" }),
|
|
@@ -16277,6 +16351,11 @@ function buildRuntimeInstructor(ctx) {
|
|
|
16277
16351
|
"",
|
|
16278
16352
|
"- `git push` uses the gitconfig-configured credential helper and is not",
|
|
16279
16353
|
" a `gh` call — it does not need `GH_TOKEN`.",
|
|
16354
|
+
"- Run `git` and `gh` in the VM with your normal `bash` tool — your",
|
|
16355
|
+
" credentials are injected here, so they work in the guest. The",
|
|
16356
|
+
" `moltnet_host_exec` tool is a last-resort host escape-hatch that",
|
|
16357
|
+
" requires human approval and is unavailable in headless task runs;",
|
|
16358
|
+
" never use it for routine git/gh.",
|
|
16280
16359
|
"",
|
|
16281
16360
|
"## Diary discipline",
|
|
16282
16361
|
"",
|
|
@@ -17339,7 +17418,7 @@ async function executePiTask(claimedTask, reporter, opts) {
|
|
|
17339
17418
|
is_error: event.isError,
|
|
17340
17419
|
result: event.isError ? truncateForWire(event.result) : void 0
|
|
17341
17420
|
}));
|
|
17342
|
-
if (event
|
|
17421
|
+
if (shouldEmitToolCallError(event)) track(emitError("tool_call_error", describeToolErrorMessage(event.result), {
|
|
17343
17422
|
tool: event.toolName,
|
|
17344
17423
|
result: truncateForWire(event.result)
|
|
17345
17424
|
}));
|
|
@@ -17591,6 +17670,28 @@ function summarizePayloadForLog(kind, payload) {
|
|
|
17591
17670
|
}
|
|
17592
17671
|
}
|
|
17593
17672
|
/**
|
|
17673
|
+
* Classify a `tool_execution_end` event for telemetry purposes.
|
|
17674
|
+
*
|
|
17675
|
+
* Bash subprocess non-zero exits are routine — agents deliberately probe
|
|
17676
|
+
* absent commands (e.g. `command -v docker` returning 127) and treat the
|
|
17677
|
+
* non-zero exit as data. Surfacing those as `tool_call_error` events floods
|
|
17678
|
+
* the message stream with spurious errors and makes a successful
|
|
17679
|
+
* negative-space probe look like a failing task.
|
|
17680
|
+
*
|
|
17681
|
+
* Reserve the `error` kind for genuine tool-machinery failures (transport,
|
|
17682
|
+
* MCP, malformed response). The `is_error` flag on `tool_call_end` still
|
|
17683
|
+
* records the non-zero exit, so consumers can distinguish ok vs. failed
|
|
17684
|
+
* bash calls without searching for a sibling error event.
|
|
17685
|
+
*
|
|
17686
|
+
* Bash timeouts remain handled separately by the cap-abort path; that
|
|
17687
|
+
* branch doesn't go through `tool_call_error`.
|
|
17688
|
+
*/
|
|
17689
|
+
function shouldEmitToolCallError(event) {
|
|
17690
|
+
if (!event.isError) return false;
|
|
17691
|
+
if (event.toolName === "bash") return false;
|
|
17692
|
+
return true;
|
|
17693
|
+
}
|
|
17694
|
+
/**
|
|
17594
17695
|
* Detect pi's bash-timeout error wrapper in a `tool_execution_end`
|
|
17595
17696
|
* result. The bash tool surfaces a timeout as a structured tool result
|
|
17596
17697
|
* `{ content: [{ type: 'text', text: '… Command timed out after N
|
|
@@ -18182,7 +18283,7 @@ function resolveTaskWorktreeBranch(task, workspaceMode) {
|
|
|
18182
18283
|
return `task/${slugifyAsciiLower(task.taskType, 60) || "task"}-${task.id.slice(0, 8)}`;
|
|
18183
18284
|
}
|
|
18184
18285
|
function resolveTaskWorkspaceMode(task, policy) {
|
|
18185
|
-
if (
|
|
18286
|
+
if (!policy.acceptsInputWorkspaceOverride) return policy.workspaceMode;
|
|
18186
18287
|
switch (typeof task.input.execution?.workspace === "string" ? task.input.execution.workspace : null) {
|
|
18187
18288
|
case "none": return "scratch_mount";
|
|
18188
18289
|
case "shared_mount": return "shared_mount";
|