BarnDog

Working copies

Commands you run inside a pulled Skill folder to edit it and suggest changes.

A working copy is a folder created by barndog skills pull, or a new folder with a SKILL.md that you push for the first time. Run these commands from the folder or any folder inside it. For a walkthrough, see Author and improve a Skill.

barndog status

Inside a working copy, shows which files you changed and the state of your Suggested Change. Outside a working copy, shows the selected machine-wide environment.

barndog status

barndog diff

Inside a working copy, shows local changes compared with the version you pulled. Outside a working copy, previews environment synchronization without applying new native writes. A pending interrupted synchronization is recovered first.

barndog diff

barndog push

Uploads your changes as a Suggested Change. If the folder already has an open Suggested Change, push adds a new revision to it.

barndog push --title "Clarify the review checklist"
OptionDescription
--title <title>The Suggested Change's title.
--origin <origin>The scope that should own a new Skill. Not needed for pulled Skills.
--publishPublish directly instead of proposing. Needs admin rights or personal ownership.
--newStart a new Suggested Change instead of updating the linked one.

You don't need Git or local commits. BarnDog compares your files with the version you pulled and sends one combined change. .git folders are left out, and symlinks are rejected.

If a push fails partway, the next push retries exactly the same submission. If the server rejects it, for example because it is out of date, your edits stay as they are.

barndog pull

Updates the working copy. It first brings in edits made on the server, such as reviewer suggestions that were applied. It then merges in the latest published version.

barndog pull

Non-overlapping text edits are combined automatically. Overlapping edits get conflict markers. For binary files, and for files one side deleted, your local version is kept. Before every pull, BarnDog saves a snapshot to ~/.barndog/workspaces/snapshots/.

barndog resolve <path>

Marks a conflicted file as resolved after you've fixed it.

barndog resolve SKILL.md

You can't push while any file is still conflicted.

On this page