Projects, Git and Claude Code
Turn a folder into a code project: Git in the editor, a board for the work, terminals that keep running when you close the tab, and Claude Code ready in every terminal.
A project is a folder in your Drive. The files stay where they are, sync to your devices and keep their version history. Stavo adds Git, a board, settings and secrets around it, and opens it in Code, Stavo's full code editor.
Turn it on (admins)
- Set up the code runner, the sandbox terminals run in (server README, "Code runner").
- Open Admin > Features and turn on Projects for everyone or selected people.
- Optional: to let git reach your Git host while the sandbox stays offline, start the egress proxy and list the hosts in Admin > Code runner > Git hosts, for example
git.example.com,github.comandapi.anthropic.comfor Claude Code.
# .env
RUNNER_EGRESS_URL=http://runner-egress-proxy:3128
RUNNER_EGRESS_PROXY=http://runner-egress-proxy:3128
RUNNER_SERVER_URL=http://server:8710
docker compose --profile runner --profile runner-egress up -d --buildThe proxy lets the sandbox reach only the hosts on the list, and never your server's own addresses. It works on Docker Desktop for Mac too.
Make a project
- Open Projects in the app switcher and click New project.
- Start empty, from a template (TypeScript with Bun, Node.js, Python, a static site), or clone a repository by URL.
- Pick where it lives: your Drive, or a space if you work on it with others.
You can also open any folder in Code and choose Make This Folder a Project from the project menu in the title bar. The project's home page shows the README, recent commits, the board, your terminals and what the project is linked to.
Git
Source Control in Code (Ctrl+Shift+G) has everything you need: stage files or single changes, write a message and commit, amend, switch and create branches, merge, stash, pull and push. Open a file to see its changes side by side or inline. When a merge has conflicts, pick ours, theirs or both for each one and mark the file resolved. History shows a commit graph, and Blame shows who changed each line.
Pushing and pulling use your own credentials. Add them in Projects > Git & Claude Code: an access token for your Git host (Forgejo, Gitea, GitHub, GitLab), or an SSH key that Stavo makes for you. Copy the public key into your Git host's settings. Credentials are stored encrypted and only handed to the sandbox for the git command that needs them.
The repository itself lives in the sandbox next to the files. Push to a remote to keep its history safe.
The board
Every project has a board with three columns: Back burner, In progress and Completed. It's in the sidebar in Code (drag cards between columns, click one for its details) and on the project's home page. Cards get numbers. Mention one in a commit message to link it:
Add the login form (#12) links the commit to card 12
Fix the redirect, fixes #12 moves card 12 to CompletedChoose in the project's settings whether that happens on commit or on push.
Terminals that keep running
Terminals stay alive when you close the tab or your laptop goes to sleep. Open the project again, on any device, and they come back with what they printed meanwhile. A dev server or a long build keeps going. Terminals nobody has looked at for a while (two hours by default) are ended. The Terminal Sessions button lists yours and lets you end them.
Code also remembers where you were in each project: open files, cursor and scroll position, the layout and your search, on every device.
Claude Code
Type claude in any project terminal. Sign in there, or turn on Use my Anthropic key in terminals to use the personal key from your Assistant settings; it only goes into your own terminals.
Each project comes with a CLAUDE.md and an MCP connection to Stavo, so Claude Code can read and edit the project's files, list, add and move cards on the board, and read linked databases. The connection uses a token for that one project and that one person; the .mcp.json file holds no secrets and is safe to commit.
Settings and secrets
- Environment variables and secrets reach every terminal in the project. Secrets are encrypted and can't be read back.
- People: projects in a space use the space's roles; you can make someone a viewer of one project. Personal projects can share the home page and board.
- Linked: link a Stavo database so Claude Code can query it.