A terminal client for Tangled, the git forge built on AT Protocol.
0

Configure Feed

Select the types of activity you want to include in your feed.

Go 99.0%
Nix 1.0%
Shell 0.1%
74 5 1

Clone this repository

https://git.vm.fail/secluded.site/tg https://git.vm.fail/did:plc:56gki5bdgcsd4kjedwiq3quu
ssh://git@knot.secluded.site:2222/secluded.site/tg ssh://git@knot.secluded.site:2222/did:plc:56gki5bdgcsd4kjedwiq3quu

For self-hosted knots, clone URLs may differ based on your setup.


README.md

tg#

tg is a command-line client for Tangled, the git forge built on atproto. It is an analogue to the GitHub CLI (gh), using Bobbin for reads and authenticated PDS/knot writes.

Installation#

With Nix#

nix profile add github:alyraffauf/tg

From source#

go install github.com/alyraffauf/tg/cmd/tg@latest

Quick start#

# Log in (OAuth, or pass an app password for headless use)
tg auth login alice.example.com

# Clone a repository
tg repo clone microcosm.blue/microcosm-rs

# Work with issues and pull requests
tg issue list
tg issue create --body "Details" "Bug report"
tg pr create --title "Add feature" --base main
tg pr merge <rkey>

tg auto-detects the repository from the origin remote when run inside a cloned Tangled repo. For now, only ssh origins are supported. You can also pass a fully-qualified handle/repo argument.

Documentation#

  • Command reference — tg <command> --help, or the man pages installed by the Nix package (man tg, man tg-issue-list, ...)
  • Authentication — OAuth and app-password login, multiple accounts, keyring token storage
  • Configuration — config file, environment variables, and flags

Contributing#

See CONTRIBUTING.md for the development workflow and an overview of the codebase.

License#

See LICENSE.