blob: 6efa99c2bb55c5d36268b34a020b8730f37abc75 [file] [log] [blame] [view]
Earl Lee2e463fb2025-04-17 11:22:22 -07001# Sketch
2
David Crawshaw64d32992025-04-21 09:14:36 -07003Sketch is an agentic coding tool focused on the Go programming language.
Josh Bleecher Snyderdb8c5ab2025-04-21 15:09:16 -07004Sketch runs in your terminal, has a web UI, understands your code, and helps you get work done.
David Crawshaw64d32992025-04-21 09:14:36 -07005To keep your environment pristine, sketch starts a docker container and outputs
6its work onto a branch in your host git repository.
Earl Lee2e463fb2025-04-17 11:22:22 -07007
David Crawshaw64d32992025-04-21 09:14:36 -07008To get started:
Earl Lee2e463fb2025-04-17 11:22:22 -07009
10```sh
11go install sketch.dev/cmd/sketch@latest
12sketch
13```
David Crawshaw64d32992025-04-21 09:14:36 -070014
15## Requirements
16
Josh Bleecher Snyder5cef9db2025-04-22 16:44:13 -070017Currently sketch runs on macOS and linux.
David Crawshawab50e9b2025-05-03 10:26:42 -070018It uses docker for containers.
Josh Bleecher Snyder5cef9db2025-04-22 16:44:13 -070019
David Crawshawab50e9b2025-05-03 10:26:42 -070020macOS: `brew install colima` (or an equivalent, like Docker Desktop or Orbstack)
Josh Bleecher Snyder5cef9db2025-04-22 16:44:13 -070021linux: `apt install docker.io` (or equivalent for your distro)
David Crawshawab50e9b2025-05-03 10:26:42 -070022WSL2: install Docker Desktop for Windows (docker entirely inside WSL2 is tricky)
David Crawshaw64d32992025-04-21 09:14:36 -070023
24The [sketch.dev](https://sketch.dev) service is used to provide access
25to an LLM service and give you a way to access the web UI from anywhere.
26
27## Feedback/discussion
28
29We have a discord server to discuss sketch.
30
Sean McCullough8da3d452025-05-01 12:28:57 -070031Join if you want! https://discord.gg/R82YagTASx
David Crawshaw64d32992025-04-21 09:14:36 -070032
Philip Zeyligerd43e5722025-04-23 19:21:26 -070033## Development
34
M-Ab5cb9542025-05-02 11:32:34 -040035[![Go Reference](https://pkg.go.dev/badge/sketch.dev.svg)](https://pkg.go.dev/sketch.dev)
36
Pokey Rulebbca2402025-04-24 09:37:58 +010037See [CONTRIBUTING.md](CONTRIBUTING.md)
Philip Zeyligerd43e5722025-04-23 19:21:26 -070038
David Crawshaw64d32992025-04-21 09:14:36 -070039## Open Source
40
41Sketch is open source.
42It is right here in this repository!
43Have a look around and mod away.
44
45If you want to run sketch entirely without the sketch.dev service, you can
Philip Zeyligerd43e5722025-04-23 19:21:26 -070046set the flag -skaband-addr="" and then provide an `ANTHROPIC_API_KEY`
David Crawshaw64d32992025-04-21 09:14:36 -070047environment variable. (More LLM services coming soon!)