Set up TeamCity CI. Finish with a green verification build or a proven external blocker.
Choose the outcome
For an explicit configuration-only or no-build request:
- create or update the pipeline;
- validate and read back its saved configuration; and
- query agent inventory and job compatibility once.
Stop after these checks. A required query that is unavailable or denied is a blocker.
For every other request, continue until the verification build is green or an external blocker is proven. Before queueing, inspect the build's side effects. Ask for approval when deploy, publish, migration, cleanup, external mutation, or material cost is possible or unclear.
Start
Read the workflow router. It selects the guides needed for the task.
Resolve the target
Before any TeamCity query or write, resolve the server from the user's request
and a named target parent project. The parent cannot be _Root.
Use a supplied non-_Root parent. If none is supplied, create a unique
<repository>-CI child project under _Root and use its returned ID. Report a
failed creation as a blocker. Never take the server from a prior task, an
environment variable, command history, tool configuration, or repository files.
Read shared guides only when needed
shared/project-inspection.md— local repository inspection.shared/build-step-selection.md— build steps, JVM verification, outputs, and status messages.shared/jdk-selection.md— agent selection and runtime verification when a job requires a specific JDK.shared/kmp-mobile.md— Kotlin Multiplatform, Android, Compose, or iOS.shared/token-safety.md— credentials.shared/vcs-connections-and-auth.md— VCS connections, auth, and roots.shared/build-diagnostics.md— a failed, stalled, or queued verification build.
Diagnose an existing run first
When the request identifies a failed build or a build already queued for
60--120 seconds, read shared/build-diagnostics.md before retrying, changing
configuration, or making another status observation. A duration reported in the
request counts toward this threshold; do not restart the observation window.
Report
Report checked facts only:
- TeamCity server and parent project ID.
- Repository URL and project root.
- TeamCity object and operations.
- A server-confirmed native Pipeline URL when available. The CLI's
teamcity pipeline view <pipeline-id> --webcan open the page; use only its observed address. Label a/buildConfiguration/...URL as a build configuration link. If no native URL is available, report the Pipeline ID; do not construct a/pipeline/...URL from an unverified numeric ID. - Configuration format and validation result.
- Verification build IDs and final states.
- First green build ID, when observed.
- Each manual prerequisite: owner, scope, action, known values, proof, and resume signal.