Help us shape the future of Go! Take the 2026 Go Developer Survey

gg

command module
v0.8.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 26, 2026 License: MIT Imports: 21 Imported by: 0

README

gg — the gagarin CLI

gg deploys and operates applications on gagarin, a cloud your coding agent can drive and you can read.

It is a thin wrapper over the gagarin API and holds no state of its own beyond a credential file. Anything gg can do, the API can do — there is no second path, and nothing about your deployment lives in your repository.

Install

go install github.com/gagarin-cloud/gg@latest

Or take a binary for your platform from releases. Every release publishes checksums; verify them. There is deliberately no curl | bash one-liner.

Then, if you use an agent:

gg skill install

That writes the agent skill to ~/.claude/skills/gagarin/, which is how a coding agent learns to use gagarin without you explaining it. The skill ships inside this binary, so it never disagrees with the CLI you have.

Use

gg signup you@example.com      # a human clicks a button in an email; that is the whole signup
gg auth --claim ABCD-1234      # waits for that click, stores credentials
gg init myapp                  # create a project
gg deploy --port 8080          # build, push, run the current directory
gg resource add postgres db    # a database; you choose the name and the size, nothing else
gg resource add redis cache    # postgres, mongo and redis — redis is in-memory and loses data on restart
gg resource secrets db         # its credentials, to pass to a deploy like any other env
gg domain add shop.example.com --service web   # answer on a name you own; prints the DNS record to create
gg status                      # what gagarin intends, and what the cluster is actually doing
gg logs web
gg share teammate@example.com  # editors deploy and manage; viewers read
gg destroy myapp               # asks your human, every time

gg help lists everything.

Two things worth knowing

Your agent can ship, but it cannot delete. The credential a single email click produces can deploy, read status and read logs. Destroying anything answers approval_required and emails you a button — every time the approval window has lapsed. An agent cannot grant itself that capability by asking.

Errors are meant to be acted on. Every failure carries a stable code, a message, and a fix_hint. Agents should branch on the code, not the prose.

Building from source

go build -o gg .
go test ./...

No code generation, no build tags, no vendored tree.

Licence

MIT. See LICENSE.

Documentation

Overview

Command gg is the gagarin CLI.

It is a thin wrapper over the API and holds no state of its own beyond an access token. Anything `gg` can do, the API can do — there is no second path.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL