Skip to main content
skill CX Codex

teamcity-cli — Claude Code skill: drive TeamCity from chat

A skill that teaches your agent to work TeamCity builds through the CLI: pull failure logs, trace build chains, edit pipelines.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add cline/skills --skill teamcity-cli -a claude-code
Open on GitHub

What teamcity-cli does

The skill covers the teamcity CLI: runs, logs, jobs, queues, agents, pools, projects and pipelines. Instead of guessing flags, the agent checks the command reference. Handy when you paste a failing build URL and want a diagnosis rather than a summary.

Inside are a quick start, a gotchas list and a command table split by area. Builds are runs (teamcity run), build configurations are jobs (teamcity job). Separate workflows cover failure investigation, build chain debugging, the pipeline lifecycle and GitHub App connections.

You need working auth first: teamcity auth status tells you whether you are logged in. Setting TEAMCITY_URL on its own bypasses stored auth, so set both TEAMCITY_URL and TEAMCITY_TOKEN or leave both alone. Composite builds have empty logs, so the real failure lives in child builds. And pipeline push does not validate anything — run teamcity pipeline validate first.

What it helps with

  • list failed builds and dump the full error log
  • trace a build chain down to the root cause
  • start a build and watch it to completion
  • edit a pipeline and validate it before pushing
  • bind a GitHub repo through an App connection

Example prompts for the agent

  • why did build <id> fail? show me the failed step logs
  • show the tree for build <id> and find the deepest failed child
  • pull pipeline <id>, validate it, then push it back

How to install teamcity-cli

1Skills CLI (Vercel)

npx skills add cline/skills --skill teamcity-cli -a claude-code

2Manually: put the files in place

~/.claude/skills/teamcity-cli/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/teamcity-cli/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about teamcity-cli

How do I install teamcity-cli in Claude?

Run npx skills add cline/skills --skill teamcity-cli -a claude-code. The skill lands in ~/.claude/skills/teamcity-cli/SKILL.md.

What does teamcity-cli do?

It gives the agent a reference for the teamcity CLI: builds, logs, jobs, queues, agents, pools, projects, pipelines and raw REST via teamcity api.

Why is the log empty for a composite build?

Composite builds have no logs of their own — drill into child builds. The skill suggests walking teamcity run tree <id> to the deepest failed one.

Source text

SKILL.md · Apache-2.0
---
name: teamcity-cli
version: 1.0.0
description: Use when working with TeamCity CI/CD or when a user provides a TeamCity build URL — drives the `teamcity` CLI for builds, logs, jobs, queues, agents, pools, projects, and pipelines.
---

# TeamCity CLI (`teamcity`)

## Quick Start

```bash
teamcity auth status                    # Check authentication
teamcity run list --status failure      # Find failed builds
teamcity run log <id> --failed --raw    # Full failure diagnostics
```

**Do not guess flags or syntax.** Use the [command reference](references/commands.md) or `teamcity <command> --help`. Builds are **runs** (`teamcity run`); build configurations are **jobs** (`teamcity job`). Never use `--count` — use `--limit` (or `-n`).

## Gotchas

- **Composite builds have empty logs** — drill into child builds for the actual failure.
- **Build chains fail bottom-up** — deepest failed dependency is the root cause. Use `teamcity run tree <id>`.
- **`--local-changes` excludes Kotlin DSL** — push `.teamcity/` changes before running.
- **`TEAMCITY_URL` alone bypasses stored auth** — set both `TEAMCITY_URL` and `TEAMCITY_TOKEN`, or leave unset.
- **Logs**: use `--raw` and dump to a temp file. **Builds**: use `--watch` when starting them.
- **VCS triggers aren't always wired up** — after pushing a fix you may need to start builds manually.
- **`pipeline push` does not validate** — always `teamcity pipeline validate` first.
- **GitHub VCS roots: use a GitHub App connection.** Never paste a PAT via `--auth password`. See [workflows](references/workflows.md).

## Core Commands

| Area      | Commands                                                                                          |
|-----------|---------------------------------------------------------------------------------------------------|
| Auth      | `auth login`, `logout`, `status`                                                                  |
| Builds    | `run list`, `view`, `start`, `watch`, `log`, `cancel`, `restart`, `tests`, `changes`, `tree`      |
| Artifacts | `run artifacts`, `run download`                                                                   |
| Metadata  | `run pin/unpin`, `run tag/untag`, `run comment`                                                   |
| Jobs      | `job list`, `view`, `create`, `tree`, `pause/resume`, `step list/view/add/delete`, `param list/get/set/delete`, `settings list/get/set` |
| Projects  | `project list`, `view`, `create`, `tree`, `param`, `token put/get`, `settings export/status`      |
| VCS/Conn  | `project vcs list/view/create/delete`, `project connection list/create/authorize/delete`          |
| Queue     | `queue list`, `approve`, `remove`, `top`                                                          |
| Agents    | `agent list`, `view`, `enable/disable`, `authorize/deauthorize`, `exec`, `term`, `reboot`, `move` |
| Pools     | `pool list`, `view`, `link/unlink`                                                                |
| Pipelines | `pipeline list`, `view`, `create`, `validate`, `pull`, `push`, `schema`, `delete`                 |
| API       | `teamcity api <endpoint>` — raw REST access                                                       |
| Link      | `teamcity link` — bind repo via `teamcity.toml`                                                   |

## Quick Workflows

See [Workflows](references/workflows.md) for full details on each.

- **Investigate failure**: `run list --status failure` → `run log <id> --failed --raw` → `run tests <id> --failed`
- **Debug build chain**: `run tree <id>` → drill to deepest failed child
- **Fix and verify**: edit → push → `run start --watch` (use `--local-changes` for personal builds)
- **Pipeline lifecycle**: `pipeline pull <id>` → edit → `pipeline validate` → `pipeline push <id>`, `pipeline schema` to get the actual schema from the server
- **GitHub VCS**: `connection create github-app` → `connection authorize` → install App on repo → `vcs create --auth token --connection-id <id>`
- **Docker registry**: `echo $TOKEN | connection create docker -p <id> --name X --url https://ghcr.io --username U --stdin`

## References

- [Command reference](references/commands.md) — all commands and flags
- [Workflows](references/workflows.md) — failure investigation, build chains, connections, pipelines
- [Output formats](references/output.md) — JSON, plain text, scripting

© cline · Apache-2.0 · cline/skills

Similar skills

Everything for DevOps and infrastructure →

From the same set17

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor