Skip to main content

Installation

Install cops from source or via a packed tarball. Requires Node.js 20+.

Quickstart

Configure your first auth profile and run your first cross-product command in minutes.

Command Reference

Complete reference for every command, subcommand, and flag.

Release Gates

Declarative release readiness checks with evidence generation and contract validation.

Why cops?

Teams running Atlassian Data Center (self-hosted Jira, Confluence, Bitbucket, Bamboo) often need to:
  • Query multiple products during release planning and execution
  • Verify cross-product release readiness — stories closed? docs updated? branch exists? builds green?
  • Generate auditable release evidence for compliance
  • Script repetitive checks in CI/CD pipelines
Without cops, this means juggling REST API calls across four products, handling auth separately for each, and building one-off scripts that break when APIs change. cops gives you one CLI, one auth config, one consistent output format across all four products, plus a declarative release gate system that can be version-controlled alongside your project.

Architecture

┌──────────────────────────────────────────────────────────┐
│  CLI Commands (oclif)                                    │
│  cops jira │ confluence │ bitbucket │ bamboo │ release   │
├──────────────────────────────────────────────────────────┤
│  Core Layer                                              │
│  auth · config-store · project-config · release-gates    │
│  output (table/json/markdown) · http (retry + backoff)   │
├──────────────────────────────────────────────────────────┤
│  Product Clients                                         │
│  jira.ts · confluence.ts · bitbucket.ts · bamboo.ts      │
├──────────────────────────────────────────────────────────┤
│  Atlassian Data Center REST APIs                         │
└──────────────────────────────────────────────────────────┘

Key features

Multi-product queries

Query Jira issues, Confluence pages, Bitbucket repos, and Bamboo builds — all from one CLI with one auth config.

Auth profile management

Named profiles for multiple Data Center instances. Switch with a single command.

Release gate system

Declarative cops.project.json config with 10+ gate types covering all four products.

Release evidence

Generate, validate, diff, and trend JSON evidence artifacts for compliance and audit.

Dynamic repo discovery

Discover in-scope repos from Jira dev-status links — no static repo lists needed.

Stable JSON output

All data commands support --output json with envelope schema version for automation.

Supported products

ProductData Center versionCapabilities
JiraData CenterIssues, boards, sprints, filters, release status, dev-status
ConfluenceData CenterPages, search, freshness checks, section validation
BitbucketData CenterRepos, branches, PRs, commits, build statuses
BambooData CenterPlans, builds, deployment environments, results

Output formats

Every data command in cops supports three output modes:
cops jira issue get ABC-123 --output table     # Default — human-readable table
cops jira issue get ABC-123 --output json      # JSON envelope with schemaVersion: "v1"
cops jira issue get ABC-123 --output markdown  # Markdown table for docs/reports
The --output json format uses a stable schemaVersion: "v1" envelope, making it safe to consume in automation scripts and CI pipelines without worrying about breaking changes.

Build docs developers (and LLMs) love