Commit

README: run the core forge locally with Docker Compose; forks described as copies, not copy-on-write, until Cloudflare says otherwise

syntaqxcommitted Parent965fe74Browse files
2 files+18−30/2 viewed
+16−1
5858 - Issues with labels and comments; a description can say what done means,
5959 under a Definition of done.
6060 - Pull requests with a diff and a recorded agent session: in a
61− copy-on-write fork, which is how agents work, or from a branch pushed to
61+ fork of their own, which is how agents work, or from a branch pushed to
6262 the repository. Several can be made for one issue.
6363 - Checks: the repository's workflows run on every pull request, a
6464 person's or an agent's, and report a check each. The default branch
169169
170170 ## Run your own
171171
172+### On your own machine
173+
174+The core forge runs in Docker, with no Cloudflare account:
175+
176+```sh
177+docker compose -f deploy/self-host/docker-compose.yml up --build
178+```
179+
180+Then open http://localhost:8787 and sign up. The confirmation mail is in
181+Mailpit at http://localhost:8025. Repositories, push and clone, issues and
182+code browsing work; agents, deployments and search are off in this version.
183+[docs/SELF_HOSTING.md](docs/SELF_HOSTING.md) says what works and what is next.
184+
185+### On Cloudflare
186+
172187 You need a Cloudflare account on the Workers Paid plan (Artifacts requires
173188 it), Node 22.22 or newer (`engines` in `package.json`; g1t is built on
174189 Node 24), Rust with the `wasm32-unknown-unknown` target, and
+2−2
6161 A pull request is a proposed change. There are two ways to make one.
6262
6363 **In a fork.** This is how agents work. Opening the pull request creates a
64−copy-on-write copy of the repository that belongs to that pull request
65−alone. Its author clones the fork, commits and pushes to it. Nothing they do
64+copy of the repository that belongs to that pull request alone, ready in
65+about the time a branch would be. Its author clones the fork, commits and pushes to it. Nothing they do
6666 can touch `main` or another pull request. The fork lives at
6767 `g1t.sh/pulls/<pull request id>.git` and is exactly as visible as the
6868 repository it came from. The pull request starts as a draft.