node -v to verify. Use nvm or fnm to install if needed.npm install -g pnpm then pnpm -v to verify.git --version to confirm.repo + workflow scopes. Create at github.com/settings/tokens.Clone the Slop repository to your machine, then install all dependencies.
git clone https://github.com/your-org/slop
cd slop
make install
make install runs pnpm install and generates the Prisma client from the database schema.
It should complete in about 60 seconds on a warm npm cache.
When it finishes without errors, you are ready for the next step. If you see Prisma errors about missing environment variables, that is expected - you will add them in Step 2.
Create a .env.local file in the root of the Slop directory.
This file holds your secrets and local paths - it is never committed to git.
GITHUB_TOKEN=ghp_xxxxxxxxxxxxxxxxxxxx
WORKTREES_ROOT=/Users/you/.slop/worktrees
PORT=3100
SLOP_URL=http://localhost:3100
GITHUB_TOKENWORKTREES_ROOTPORTSLOP_URLANTHROPIC_API_KEY set here. For Codex, add OPENAI_API_KEY.
You can add these now or later from the Config page. See the
Configuration reference for the full list.
Run the development server. This starts both the Next.js UI and the background worker daemon together.
make dev
You should see output from both Next.js (port 3100) and the daemon startup sequence.
Wait until you see something like ready - started server on 0.0.0.0:3100.
Open http://localhost:3100 in your browser. You will see the Slop board. The board will be empty because you have not added a watched repo yet.
http://localhost:3100/api/health.
You should get a JSON response with "ok": true and daemon status.
If you see an error, check your .env.local file and restart make dev.
Slop needs to know which GitHub repository to work on. You configure this as a "watched repo" on the Config page. You need both a GitHub remote and a local checkout.
Make sure your target repo is already cloned locally before this step:
# If you haven't already cloned your target repo:
git clone https://github.com/myorg/myrepo /Users/you/code/myrepo
Then in the Slop UI:
- Click Config in the sidebar
- Under "Repositories", click Add Repository
- Fill in the form:
- Owner/Name: e.g.
myorg/myrepo - Local Path: absolute path to your local checkout, e.g.
/Users/you/code/myrepo - Base Branch: usually
mainormaster
- Owner/Name: e.g.
- Click Save
harness/bootstrap.sh
inside your local checkout. This installs the agent skills the AI needs to operate in that repo.
You do not need to run it manually.
By default, Slop sits idle and waits for you to manually trigger work. Enabling Auto Mode lets the daemon claim and implement issues automatically as they enter the Ready queue.
On the Config page, toggle these settings:
Auto ModeAuto MergeAuto ReviewAgent ModelGo back to the Board (the main page). You should now see issues from your watched repo loaded in the Backlog column. If it's empty, wait about 30 seconds and refresh - the first snapshot takes one poll cycle to populate.
Pick a small, well-defined issue for your first run. Good candidates:
- A clear bug fix with a specific reproduction step
- A simple UI change with explicit requirements
- Adding a unit test for an existing function
- A documentation update
Avoid large or ambiguous issues for your first run. The agent works best when the task is scoped.
Once you've picked an issue:
- Click the issue card to open the detail view
- Click Set Ready to move it to the Ready queue
- (Optional) Set Story Points to estimate complexity: 1-3 for small, 5-8 for medium, 13+ for large. This affects token budgets.
- (Optional) Override the agent model for this specific issue if it differs from your default
With Auto Mode on, the daemon claims your issue within about 30 seconds on the next poll cycle. The issue card moves from Ready to In Progress.
Click the card to open the live worker view. You will see real-time output streaming from the agent - what it's reading, what changes it's making, and which tools it's calling. Token usage and cost accumulate in the panel as the agent works.
WORKTREES_ROOT/<repoId>/<issueNumber>.slop/issue-N), and opens a pull request. The PR appears on your watched repo immediately.
Go to your watched repo on GitHub. You will see a new pull request opened by the agent on a branch
named slop/issue-<N>.
The PR contains:
- The implementation commit(s) with a descriptive message
- A PR body summarizing the approach the agent took
- No "Closes #N" line - Slop closes the issue directly after the merge, not via the PR body
If Auto Merge is on and CI passes, you should see the PR merge itself within a few minutes of CI completion. Check the Board - the card will be in the Done column.
GITHUB_TOKEN has repo scope and that the owner/name slug
matches exactly (case-sensitive).
WORKTREES_ROOT
is not writable - check permissions and that the path exists. (2) GITHUB_TOKEN
is missing the workflow scope, which is required to push to protected branches.
Check the worker log (click the card in the board) for the exact error.
make install again to re-generate the Prisma client. If you recently updated
the schema, run pnpm exec prisma db push --accept-data-loss to sync the database.
For a completely fresh start, delete slop.db and restart make dev.