Skip to content

Development Lifecycle

This page walks through common team development workflows end-to-end, showing every command and its expected output. Use these as recipes for your own team development.

For the consumer perspective (installing, using, and updating teams), see Installing & Using.


The full create-to-publish loop: build a team locally, iterate on it, version it, and publish to CliqHub.

Terminal window
cliq team new @myorg/deploy-pipeline
✓ Created @myorg/deploy-pipeline
→ ./deploy-pipeline/@myorg/deploy-pipeline/team.yml

This creates the team directory in the current working directory with a team.yml skeleton and an empty roles/ directory.

Add roles and generate a workflow:

Terminal window
cliq team add-role @myorg/deploy-pipeline architect --from ./templates/architect.md
cliq team add-role @myorg/deploy-pipeline deployer
cliq team gen-workflow @myorg/deploy-pipeline

Edit the workflow and roles until you’re satisfied:

Terminal window
cliq team edit-workflow @myorg/deploy-pipeline
cliq team validate @myorg/deploy-pipeline

Install to the global registry and assemble in a test project:

Terminal window
cliq team install ./@myorg/deploy-pipeline
Installing @myorg/deploy-pipeline v1.0.0...
✓ Installed to ~/.cliqrc/teams/@myorg/deploy-pipeline/
Terminal window
cd ~/test-project
cliq init
cliq assemble @myorg/deploy-pipeline
cliq req -m "Deploy the staging environment"
cliq run

Make changes to the source directory, bump the version, and reinstall:

Terminal window
vim ./@myorg/deploy-pipeline/roles/deployer.md
cliq team version patch @myorg/deploy-pipeline
v1.0.0 → v1.0.1
Terminal window
cliq team install ./@myorg/deploy-pipeline
Upgrading @myorg/deploy-pipeline 1.0.0 → 1.0.1
✓ Installed to ~/.cliqrc/teams/@myorg/deploy-pipeline/

Or use cliq team update if the team is already installed with provenance:

Terminal window
cliq team update @myorg/deploy-pipeline

Authenticate and publish to CliqHub:

Terminal window
cliq hub login
cliq team publish ./@myorg/deploy-pipeline -m "Initial release"
Validating team...
✓ Team valid
Publishing @myorg/deploy-pipeline v1.0.1 to https://cliqhub.io...
✓ Published @myorg/deploy-pipeline v1.0.1
Changelog: Initial release
View: https://cliqhub.io/@myorg/deploy-pipeline
Terminal window
vim ./@myorg/deploy-pipeline/roles/architect.md
cliq team version minor @myorg/deploy-pipeline
v1.0.1 → v1.1.0
Terminal window
cliq team publish ./@myorg/deploy-pipeline -m "Added rollback phase"
✓ Published @myorg/deploy-pipeline v1.1.0

Quick local development without scopes or publishing. Good for experimentation and project-specific teams.

Terminal window
cliq team new my-experiment
✓ Created my-experiment
→ ./my-experiment/team.yml

The team has an unscoped name. When installed, it goes to @local/.

Terminal window
cliq team add-role my-experiment researcher
cliq team add-role my-experiment writer
cliq team gen-workflow my-experiment

Test directly with --dir:

Terminal window
cd ~/test-project
cliq init
cliq assemble my-experiment --dir ~/my-experiment
Terminal window
cliq team install ~/my-experiment
Installing @local/my-experiment v1.0.0...
✓ Installed to ~/.cliqrc/teams/@local/my-experiment/

Now use it anywhere without --dir:

Terminal window
cliq assemble my-experiment

Edit the source, bump the version:

Terminal window
vim ~/my-experiment/roles/researcher.md
cliq team version patch my-experiment
cliq team update @local/my-experiment
Updating @local/my-experiment 1.0.0 → 1.0.1 from /Users/you/my-experiment...
✓ Updated

Start from an existing team, customize it, and publish under your own scope. This is the most common path for teams that extend or specialize an official @cliq team.

Terminal window
cliq team install hub://@cliq/feature-dev-js
✓ Installed @cliq/feature-dev-js v1.2.0
Terminal window
cliq team copy @cliq/feature-dev-js ./my-tdd

This copies all files into ./my-tdd/. The team.yml still says name: @cliq/feature-dev-js — you haven’t claimed a new identity yet.

Modify roles, adjust the workflow, test from the local directory:

Terminal window
vim ./my-tdd/roles/developer.md
cliq assemble @cliq/feature-dev-js --dir .
cliq req -m "Add input validation to the signup form"
cliq run

You can repeat this cycle as many times as needed. The team identity stays as @cliq/feature-dev-js during development — the --dir . flag tells cliq to resolve from your local directory instead of the registry.

When you’re happy with the changes, re-copy with your scope:

Terminal window
cliq team copy @cliq/feature-dev-js ./my-tdd-final @acme/my-tdd

This creates ./my-tdd-final/ with team.yml rewritten to name: @acme/my-tdd. You can also pass just a scope to keep the original bare name:

Terminal window
cliq team copy @cliq/feature-dev-js ./my-feature-dev @acme

This produces name: @acme/feature-dev-js in team.yml.

Terminal window
cliq team install ./my-tdd-final
Installing @acme/my-tdd v1.0.0
Type the full team name to confirm: @acme/my-tdd
✓ Installed @acme/my-tdd v1.0.0

Since this is a fresh install (no existing @acme/my-tdd), there’s no overwrite prompt. If you later reinstall, cliq will ask you to type the full team name to confirm the overwrite. Use --force to skip.

Terminal window
cliq team version patch @acme/my-tdd
cliq team publish ./my-tdd-final -m "Custom TDD pipeline based on @cliq/feature-dev-js"
Publishing @acme/my-tdd v1.0.1 to https://cliqhub.io
Type the full team name to confirm: @acme/my-tdd
✓ Published @acme/my-tdd v1.0.1

Use the AI builder to generate a team, then refine and publish.

Terminal window
cliq builder generate -m "SOC2 compliance audit pipeline" --name @myorg/soc2-audit
Generating team...
✓ Created architect role
✓ Created auditor role
✓ Created evidence-collector role
✓ Created report-writer role
✓ Generated workflow (4 phases)
✓ Generated A2A metadata
✓ Team created at ./@myorg/soc2-audit/
Terminal window
cliq team validate @myorg/soc2-audit
cliq builder gaps @myorg/soc2-audit
Suggestions:
1. [phase] Add a gap analysis phase before evidence collection
2. [role] Auditor role should reference specific SOC2 control families
3. [workflow] Consider adding a human gate after the report phase
Terminal window
cliq builder improve @myorg/soc2-audit --role auditor \
--instruction "Reference SOC2 Type II control families CC1-CC9"
Terminal window
cliq team install ./@myorg/soc2-audit
cd ~/test-project && cliq assemble @myorg/soc2-audit
cliq team version patch @myorg/soc2-audit
cliq hub login
cliq team publish ./@myorg/soc2-audit -m "Initial SOC2 audit pipeline"

WorkflowKey commands
Authorteam newadd-rolegen-workflowteam installteam versionteam publish
@localteam new → develop → team install ./pathassemble
Fork & customizeteam install hub://team copy → edit → team copy ... @scopeteam installteam publish
Builderbuilder generatebuilder improveteam installteam publish