$ cat node-template.py
C
Code agent
// Run a coding agent in a lane's folder. Wire the lane's Worktree folder, an approved brief and a Decisions block into it; the agent works on the lane's branch, commits as it goes, pushes, and runs your checks — or stops and asks when the brief does not answer something. It never clones and never opens a pull request: a fix round is another run of this same node on the same folder (each result carries the lane's round count), and the Pull request node opens the PR for the commit these checks ran on.
Process
Utility
#code#agent#github#lane
template.py
1"""Code agent — one coding run in a lane's folder (vibe-coding Lane split).23**This file does not run.** It is here because a marketplace template must4carry `code`, and because the schema-coverage linter checks that every port a5template declares is named somewhere in it. The work happens in the6`coding-agent` runtime's image, whose adapter7(`apps/workspace-executor-coding-agent/adapter/lane.mjs`) reads the same stdin8envelope this file would have received and ignores `code` entirely.910## What the node does with the ports below1112 inputs.folder the lane's folder (from its Worktree node); never cloned13 inputs.brief ─┐14 inputs.decisions ─┼─▶ the prompt (DECISIONS first, review fixes after)15 inputs.checks ─┘16 inputs.llmModelId the model, resolved per run into an endpoint and a key1718 ── the agent works on the folder's branch, checkpointing every 10 min ──19 ── push, then the checks ──2021 outputs.head_sha, pr_title, pr_body for the Pull request node22 outputs.branch, folder, summary, changed_files, patch, log, checks23 outputs.inputs_digest, source_executions provenance24 outputs.outcome, reason only when the run stopped (waiting | failed)2526## Editing this file does nothing2728Changing the body below changes the node's `code_hash` and nothing else.29"""3031CODE_AGENT_INPUTS = ("folder", "brief", "decisions", "checks", "llmModelId")32CODE_AGENT_OUTPUTS = (33 "head_sha",34 "pr_title",35 "pr_body",36 "branch",37 "folder",38 "summary",39 "changed_files",40 "outcome",41 "reason",42 "patch",43 "log",44 "inputs_digest",45 "source_executions",46 "checks",47)4849ADAPTER_ENTRYPOINT = "/executor/adapter/main.mjs"5051raise RuntimeError(52 "The Code agent template is executed by the coding-agent runtime's adapter "53 f"({ADAPTER_ENTRYPOINT}), not by this code. Reaching this line means the "54 "node ran in a template runtime — check that TEMPLATE_META.runtime is "55 "'coding-agent' and that this template's id is on "56 "PRIVILEGED_RUNTIME_TEMPLATE_IDS in "57 "apps/workspace-service/app/executors/runtime_table.py."58)59$ git log --oneline
v1.1.0
HEAD
2026-10-14First marketplace publish: vibe-coding lanes and the gstack plan flow (PR #1313).