GitPanda v3.1.1 Install
Reference

Commands

Every gitpanda command, its options and examples.

gitpanda <command> [<args>] [--options]

Run gitpanda help for this list in your terminal, or just gitpanda to see where you are and what to do next. Options can go before or after arguments; -am "msg" combines short options.

Sign in#

login#

Sign in. Opens your browser to approve, and connects every company you tick.

gitpanda login
gitpanda login --key              # paste an API key instead (hidden)
gitpanda login --key opk_…        # or pass it
gitpanda login --host https://staging.okaypanda.pages.dev
Option
--key [opk_…] Sign in with an API key.
--host <url> Sign in to another OkayPanda server.

logout [repo]#

Forget the saved key for one company, or all of them, on this computer. Revoke keys in the app to stop them everywhere.

whoami#

The account, company, role and scopes in use here, and the repository's address.

repos#

Every panda repo you're signed in to: web and app links, local clones, your role and scopes. See Repositories.

use <repo>#

Set the default company for commands run outside a clone.

info#

Inside a clone: the company, web address, folder, branch, unpushed commits, last pull and account. Anywhere: the tool's version, whether a newer one is out, and where it's installed.

Work with a repository#

clone <repo> [dir]#

Download a company's repository into dir (default: the repository's name). The folder must be empty or not exist. repo is a name from gitpanda repos.

status (alias st)#

What you changed: staged, not staged, new documents, deleted, and read-only files you edited. Also says how many commits are waiting to be pushed.

diff [paths]#

Changes not yet staged, line by line, as a unified diff.

Option
--staged (or --cached) Show staged changes instead.

add <paths>#

Stage changes for the next commit. Paths can be files, folders or . for everything. Read-only files are skipped with a note, and only Markdown under docs/ or <room>/docs/ can be added.

Option
-A, . Everything.
-v Say how many files were staged.

reset [paths]#

Unstage files (all of them with no paths). Your edits stay.

restore <paths>#

Throw away your edits and put back the last pulled (or staged, or committed) version.

Option
--staged Unstage instead of discarding.

commit [-m "message"] (alias ci)#

Record staged changes with a message, which appears in the company's history. Without -m, the AI writes one from your changes and asks you to keep it or type your own.

Option
-m "message" The message.
-a Stage every changed document first (not new files). Combine as -am "message".

push#

Send your commits, oldest first. Each document gets a new version with the commit's message. A document changed in OkayPanda since you pulled is refused (see Conflicts).

Option
--force Replace changes made since your pull with yours.
--review Have the AI review your commits first.

pull#

Get your team's changes. Never overwrites your edits: conflicting versions are saved as <file>.theirs.

Option
--force Take their version even where you've made edits.

fetch#

Check what's new without changing anything. The prompt shows the count as ↓n.

sync -m "message"#

Stage everything you can send (including new documents), commit, pull and push.

Option
-m "message" The commit message. Without it, one is written from the files' names.
--force Passed to push.

log [path]#

The history: who changed what and why. 🐼 marks AI employees; unpushed commits come first.

Option
--oneline One line per change.
-n <count> How many (default 12, or 30 with --oneline).

show <commit | file | G-n>#

A commit (with its file, or its diff if it isn't pushed), a file from OkayPanda, or a goal.

cat <path>#

Print a file from OkayPanda.

branch#

Shows * main and any unpushed commits. GitPanda has one line of history; checkout and switch explain the same.

remote [-v]#

The repository's address (origin).

open#

Open the repository (or the app, outside a clone) in your browser.

init#

Explains that repositories come from OkayPanda: use clone.

Just say it#

gitpanda "what you want, in plain words"
gitpanda do "…"             # the same, explicitly

The AI turns it into one command and shows it first. Questions run at once; changes ask (--yes to skip, needed in scripts). A single mistyped word gets "Did you mean" instead.

Shortcut Same as
save ["message"] sync -m "message" (the AI writes it if you leave it out)
get pull
st / ci status / commit

A team inside your repository#

See A team inside your repository.

Command What it does
check Contradictions, stale and empty documents, broken links, rooms without docs, and a score.
check --fix [--all] Hand high and medium issues (or all) to the rooms that own them. --yes skips the question.
request <file> "what" The owning room changes the document; it arrives as a new version. --watch, --auto.
request <room> "what" The room writes something new.
why <file> Every version, who made it, and the goal and task behind it.
now Who's working on what right now. (status shows it too.)

AI in your repository#

See AI in your repository for the full story.

Command What it does
ask "question" The repository answers, citing its files. --docs to never treat the first word as a room.
search "words" Full-text search with matching lines. -n <count>.
commit (no -m) The AI writes the message; Enter keeps it, or type your own. -y keeps it without asking.
review An AI review of everything changed since your last pull.
push --review Review, then push (asks first if there are issues).
edit <file> "change" The AI makes the change in your file and shows the diff. --undo puts it back.
explain <file> What a document is, what matters in it, and questions to ask.
recap What changed and who did it. --days <n> (default 7).
contributors People and AI employees, with their number of changes.

Your AI team#

See Your AI team for the full story.

Command What it does
rooms Rooms, leads, staff, and what's running and open.
ask <room> "text" Ask a room's lead. Asking for work queues a task. (ask "text" alone asks the repository.)
goal "text" Give the company a goal. --room <room>, --watch, --auto.
goals Open goals with progress. --all for every goal.
show G-n One goal: tasks, questions, approvals, pull requests, files, latest message.
watch G-n Watch a goal's work live.
say G-n "text" Talk to a goal: questions, updates, more work.
files G-n Download the files a goal made. --out <dir>.
approvals What's waiting on you.
approve <id> Approve. -m "note".
decline <id> Decline. -m "why".
code "text" --repo owner/name An engineer writes it and opens a pull request. --room, --auto, --no-watch. See Code.

The tool#

Command What it does
gitpanda Where you are and what to do next.
help (or --help) Every command.
version (or --version) Your version, and whether a newer one is out.
upgrade Update to the latest version in place.
shell [zsh|bash] Print the prompt snippet. --install adds it to your rc file; --yes skips the question.
prompt The prompt segment itself. --shell zsh|bash for that shell's escapes.

Exit codes#

Code Meaning
0 It worked.
1 It didn't: the message says why (not signed in, refused, conflict, not found…).
2 A mistyped command ("Did you mean").