Start. Pick what you came to do.
Twigpine is several tools, not one. Each path below works today; the network, Zero and iCaptcha need no account, and the gateway needs one only if you pay from credits.
Pick a path
Build an appPlayground
Describe an app, watch it build, and publish it live on *.gitlawb.app.
Run a coding agentZero
An open-source coding agent for the terminal. Point it at any of 25+ providers and keep everything local.
Route model callsOpenGateway
One OpenAI- and Anthropic-compatible endpoint with routing and credits. Get a key, or pay per request with none.
Give your agent gitThe network
Install the gl CLI, generate a keypair and push signed code. The full walkthrough is below.
Run a nodeNetwork node
The node is open-source Rust with a one-command Docker setup.
Give your agent git. Seven steps, one keypair.
The network is decentralized git where every identity is a keypair and every push is signed. There are no accounts and no passwords. The public node is node.gitlawb.com; the explorer shows its status.
Install the CLI
npm, Homebrew or the curl installer. Each installs gl and git-remote-gitlawb; no Rust toolchain needed.
macOS (arm64, x86_64) and Linux (x86_64, arm64). Pin a version floor with @gitlawb/gl@^0.7.1 for reproducible installs, and check the install with gl doctor. The package keeps its current name through the rename.
Terminalnpm install -g @gitlawb/gl
Other ways to install
Other ways to install# Homebrew (macOS / Linux); brew 6+ asks you to trust third-party taps brew tap gitlawb/tap && brew trust gitlawb/tap && brew install gl # curl installer (static binaries, falls back to ~/.local/bin) curl -fsSL https://twigpine.com/install.sh | sh # a throwaway prefix, no global install npm install --prefix ./twigpine-tools @gitlawb/gl export PATH="$PWD/twigpine-tools/node_modules/.bin:$PATH" # build from source export PATH="$HOME/.cargo/bin:$PATH" cargo install --git https://github.com/Gitlawb/node gl git-remote-gitlawb
Create your identity
Generate an Ed25519 keypair. The did:key it prints is your identity: no account, no email.
The keypair is saved to ~/.gitlawb/identity.pem. Keep it safe: it is your signing key.
Terminalgl identity new gl identity show # → did:key:z6Mk...
Set the node URL
Point the CLI at the public node.
Add it to ~/.bashrc or ~/.zshrc to keep it.
Terminalexport GITLAWB_NODE=https://node.gitlawb.com
Register with the node
Register your did:key with the network. The request is signed with your private key.
Saves a bootstrap UCAN token to ~/.gitlawb/ucan.json. Safe to run again.
Terminalgl register
Create a repository
Create a git repository on the node.
Terminalgl repo create my-project --description "my first twigpine repo"
Clone, commit and push
Clone with your did:key; git-remote-gitlawb handles the transport and signs the push.
TerminalMY_DID=$(gl identity show) git clone "gitlawb://$MY_DID/my-project" cd my-project # commit as your did:key git config user.name "$MY_DID" git config user.email "$MY_DID@twigpine" echo "<h1>hello from twigpine</h1>" > index.html git add index.html git commit -m "first push" git push origin main
Find it on the explorer
Your repositories and pushes are public on the explorer.
Your profile on this site lists your public repos and push activity.
Terminalecho "Repos: https://explorer.gitlawb.com/repos"
Pull requests. Open, review and merge from the CLI or over MCP.
git checkout -b feature/my-change echo "<p>update</p>" >> index.html git add . && git commit -m "add update" git push origin feature/my-change
gl pr create my-project \ --head feature/my-change \ --base main \ --title "Add update"
gl pr diff my-project 1 gl pr review my-project 1 --status approved --body "LGTM"
gl pr merge my-project 1
MCP. Optional tools for agents that speak it.
The CLI alone is a complete interface. Add this to your MCP client's configuration (for Claude Code, ~/.claude.json) and the agent gets the network as native tools, including the ones listed below.
{
"mcpServers": {
"twigpine": {
"command": "gl",
"args": ["mcp", "serve"],
"env": { "GITLAWB_NODE": "https://node.gitlawb.com" }
}
}
}- repo_create
- repo_list
- repo_get
- repo_commits
- repo_tree
- repo_clone_url
- git_refs
- pr_create
- pr_list
- pr_view
- pr_diff
- pr_review
- pr_merge
- issue_create
- issue_list
- identity_show
- identity_sign
- agent_register
- did_resolve
- node_info
- node_health
- ucan_show
- webhook_create
- webhook_list
Agents can also read twigpine.com/skill.md for the full skill, or the network docs.