CodePipelineCreateRequest
A code pipeline’s definition, to create a pipeline or add a version to one. Most pipelines are deployed from a project folder instead (code-pipelines/<name>/pipeline-definition.json).
Kind: an object, used in requests.
Fields
Section titled “Fields”| Field | Type | Required | Description |
|---|---|---|---|
name | string | yes | The pipeline’s name, unique within its namespace. At most 128 characters. Constraints: maxLength: 128, required (empty or whitespace-only strings are rejected). |
agents | CodePipelineAgentInput[] | yes | The pipeline’s agents. At least one. Constraints: minLength: 1, required (empty or whitespace-only strings are rejected). |
phases | CodePipelinePhaseDefinitionInput[] | yes | The pipeline’s phases, each a group of steps. At least one. Constraints: minLength: 1, required (empty or whitespace-only strings are rejected). |
externalOperationsMcp | McpExternalOperationBindingInput[] | MCP tools every agent of the pipeline may use. | |
externalOperationsOpenApi | OpenApiExternalOperationBindingInput[] | OpenAPI tools every agent of the pipeline may use. | |
authenticationSecretInputs | ConnectorAuthenticationSecretInputInput[] | Inputs a run supplies as secrets for the tools’ authentication. | |
bindingInputs | ConnectorBindingInputInput[] | Inputs a run supplies as values bound into the tools’ calls. | |
promptInputs | PromptInputInput[] | Inputs a run supplies for the step prompts (%%input:name%%). | |
vfsBindings | CodePipelineVfsBindingInput[] | File systems the pipeline declares for its agents. A run mounts only the file systems in its own vfsMounts. | |
cogniscriptAppId | uuid | null | The app that holds the pipeline’s hooks (its Cogniscript methods). Null: no hooks. | |
systemPrompts | string[] | null | System prompts every agent of the pipeline gets. | |
systemPromptMode | CodePipelineSystemPromptMode| null | How the pipeline’s systemPrompts combine with the ones before them. Null: Additional. | |
resumeVfsNamespace | string | null | The namespace of a file system to save the agents’ sessions in, so a resumed or restarted run carries on from them. Null: sessions are not saved. | |
resumeVfsName | string | null | The name of that file system, within resumeVfsNamespace. Null: default. | |
durationWarning | timespan | null | Not used by code pipeline runs. | |
durationAutoTermination | timespan | null | The longest any step may run, for steps whose step and phase set no durationAutoTermination. Null: Maitento’s default. | |
durationActivityTimeout | timespan | null | How long any step may go without activity before it is stopped, for steps whose step and phase set no durationActivityTimeout. Null: Maitento’s default. | |
hookDurationLimit | timespan | null | The longest one hook may run. Null: 30 seconds. | |
includeEnvironmentInfo | boolean | Not used by code pipeline runs. | |
allowHumanInteraction | boolean | Whether the agents may stop and ask a person a question. The run then waits in HumanInteractionRequired until it is answered. | |
allowWebTools | boolean | Whether the pipeline’s agents get Maitento’s web search and fetch tools. Off by default. | |
onErrorHook | string | null | The name of a hook to run when the run hits an infrastructure error, such as a failed clone or push. | |
maxFixIterations | integer | null | The most review-and-fix rounds a hook’s fix loop may run. Null: 3. Capped at 5. | |
confidenceThreshold | number | null | For a fix loop that ends on the agents’ own confidence: the confidence, from 0 to 1, at which it stops. Null: 0.8. | |
maxInjectedPhases | integer | null | The most phases hooks may add to one run in total. Null: 24. | |
maxParallelSteps | integer | null | How many of a phase’s steps may run at once. Null: 6. Between 1 and 16. | |
credentialStack | string | null | The credential stack the pipeline’s runs use, by id or name, when their start doesn’t name one: its API keys and coding-agent sign-ins serve the engines, and Maitento’s own keys never do. Null: the namespace’s default stack, then your tenant’s. |
Example
Section titled “Example”{ "name": "...", "agents": [ { "name": "...", "defaultEngine": "Claude", "role": "Architect", "tags": [], "defaultModel": "...", "systemPrompts": [], "enginePrompts": [], "systemPromptMode": "Additional", "externalOperationsMcp": [], "externalOperationsOpenApi": [], "allowWebTools": false } ], "phases": [ { "name": "...", "dependsOn": [], "steps": [], "preHook": "...", "postHook": "...", "onFailHook": "...", "durationWarning": "00:05:00", "durationAutoTermination": "00:05:00", "durationActivityTimeout": "00:05:00" } ], "externalOperationsMcp": [ { "name": "...", "externalOperationId": "3f2b8c1e-5d4a-4e6b-9c7d-2a1b0c9d8e7f", "externalOperationVersion": 0, "requestBindings": [], "authenticationHeader": {}, "promptGuidance": "...", "isTerminal": false } ], "externalOperationsOpenApi": [ { "pathBindings": [], "queryBindings": [], "name": "...", "externalOperationId": "3f2b8c1e-5d4a-4e6b-9c7d-2a1b0c9d8e7f", "externalOperationVersion": 0, "requestBindings": [], "authenticationHeader": {}, "promptGuidance": "...", "isTerminal": false } ], "authenticationSecretInputs": [ { "externalOperationId": "3f2b8c1e-5d4a-4e6b-9c7d-2a1b0c9d8e7f", "agentId": "3f2b8c1e-5d4a-4e6b-9c7d-2a1b0c9d8e7f", "defaultSecretId": "3f2b8c1e-5d4a-4e6b-9c7d-2a1b0c9d8e7f", "headerName": "...", "name": "...", "description": "...", "isRequired": false } ], "bindingInputs": [ { "externalOperationId": "3f2b8c1e-5d4a-4e6b-9c7d-2a1b0c9d8e7f", "agentId": "3f2b8c1e-5d4a-4e6b-9c7d-2a1b0c9d8e7f", "target": "...", "defaultValue": "...", "type": "Request", "name": "...", "description": "...", "isRequired": false } ], "promptInputs": [ { "dataType": "String", "name": "...", "description": "...", "isRequired": false } ], "vfsBindings": [ { "name": "...", "vfsId": "3f2b8c1e-5d4a-4e6b-9c7d-2a1b0c9d8e7f", "mode": "ReadOnly", "context": "..." } ], "cogniscriptAppId": "3f2b8c1e-5d4a-4e6b-9c7d-2a1b0c9d8e7f", "systemPrompts": [ "..." ], "systemPromptMode": "Additional", "resumeVfsNamespace": "...", "resumeVfsName": "...", "durationWarning": "00:05:00", "durationAutoTermination": "00:05:00", "durationActivityTimeout": "00:05:00", "hookDurationLimit": "00:05:00", "includeEnvironmentInfo": false, "allowHumanInteraction": false, "allowWebTools": false, "onErrorHook": "...", "maxFixIterations": 0, "confidenceThreshold": 0, "maxInjectedPhases": 0, "maxParallelSteps": 0, "credentialStack": "..."}Where it’s used
Section titled “Where it’s used”pipelines.create(POST /namespaces/{namespaceName}/code-pipelines)