| | @@ -0,0 +1,161 @@ |
| 1 | +version: 2
|
| 2 | +
|
| 3 | +project_name: scuttlebot
|
| 4 | +
|
| 5 | +before:
|
| 6 | + hooks:
|
| 7 | + - go mod tidy
|
| 8 | +
|
| 9 | +builds:
|
| 10 | + - id: scuttlebot
|
| 11 | + main: ./cmd/scuttlebot
|
| 12 | + binary: scuttlebot
|
| 13 | + env: [CGO_ENABLED=0]
|
| 14 | + goos: [linux, darwin, windows]
|
| 15 | + goarch: [amd64, arm64]
|
| 16 | + ignore:
|
| 17 | + - goos: windows
|
| 18 | + goarch: arm64
|
| 19 | + ldflags: ["-s -w -X main.version={{.Version}}"]
|
| 20 | +
|
| 21 | + - id: scuttlectl
|
| 22 | + main: ./cmd/scuttlectl
|
| 23 | + binary: scuttlectl
|
| 24 | + env: [CGO_ENABLED=0]
|
| 25 | + goos: [linux, darwin, windows]
|
| 26 | + goarch: [amd64, arm64]
|
| 27 | + ignore:
|
| 28 | + - goos: windows
|
| 29 | + goarch: arm64
|
| 30 | + ldflags: ["-s -w -X main.version={{.Version}}"]
|
| 31 | +
|
| 32 | + # Relays only ship for unix — agents run on dev machines, not Windows servers.
|
| 33 | + - id: claude-relay
|
| 34 | + main: ./cmd/claude-relay
|
| 35 | + binary: claude-relay
|
| 36 | + env: [CGO_ENABLED=0]
|
| 37 | + goos: [linux, darwin]
|
| 38 | + goarch: [amd64, arm64]
|
| 39 | + ldflags: ["-s -w -X main.version={{.Version}}"]
|
| 40 | +
|
| 41 | + - id: codex-relay
|
| 42 | + main: ./cmd/codex-relay
|
| 43 | + binary: codex-relay
|
| 44 | + env: [CGO_ENABLED=0]
|
| 45 | + goos: [linux, darwin]
|
| 46 | + goarch: [amd64, arm64]
|
| 47 | + ldflags: ["-s -w -X main.version={{.Version}}"]
|
| 48 | +
|
| 49 | + - id: gemini-relay
|
| 50 | + main: ./cmd/gemini-relay
|
| 51 | + binary: gemini-relay
|
| 52 | + env: [CGO_ENABLED=0]
|
| 53 | + goos: [linux, darwin]
|
| 54 | + goarch: [amd64, arm64]
|
| 55 | + ldflags: ["-s -w -X main.version={{.Version}}"]
|
| 56 | +
|
| 57 | +packaged together — .
|
| 58 | + - id: server
|
| 59 | + ids: [scuttlebot, scuttlectl]
|
| 60 | + name_template: "scuttlebot_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
|
| 61 | + format_overrides:
|
| 62 | + - goos: windows
|
| 63 | + formats: [zip]
|
| 64 | + files:
|
| 65 | + - LICENSE
|
| 66 | + - README.md
|
| 67 | + - deploy/standalone/scuttlebot.yaml.example
|
| 68 | +
|
| 69 | + # Relay binaries — archive for developer machines.
|
| 70 | + - id: relays
|
| 71 | + ids: [claude-relay, codex-relay, gemini-relay]
|
| 72 | + name_template: "scuttlebot-relays_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
|
| 73 | + files:
|
| 74 | + - LICENSE
|
| 75 | +
|
| 76 | + # Flat binaries — raw executables for curl-and-run installs.
|
| 77 | + # Named: scuttlebot_linux_amd64, claude-relay_darwin_arm64, etc.
|
| 78 | + - id: binaries
|
| 79 | + format: binary
|
| 80 | + name_template: "{{ .Binary }}_{{ .Os }}_{{ .Arch }}"
|
| 81 | +
|
| 82 | +checksum:
|
| 83 | + name_template: "checksums.txt"
|
| 84 | + algorithm: sha256
|
| 85 | +
|
| 86 | +changelog:
|
| 87 | + sort: asc
|
| 88 | + use: github
|
| 89 | + filters:
|
| 90 | + exclude:
|
| 91 | + - "^Merge"
|
| 92 | + groups:
|
| 93 | + - title: Features
|
| 94 | + regexp: "^feat"
|
| 95 | + order: 0
|
| 96 | + - title: Bug fixes
|
| 97 | + regexp: "^fix"
|
| 98 | + order: 1
|
| 99 | + - title: Security
|
| 100 | + regexp: "^security"
|
| 101 | + order: 2
|
| 102 | + - title: Documentation
|
| 103 | + regexp: "^docs"
|
| 104 | + order: 3
|
| 105 | + - title: Other
|
| 106 | + order: 99
|
| 107 | +
|
| 108 | +dockers:
|
| 109 | + - id: scuttlebot-amd64
|
| 110 | + ids: [scuttlebot]
|
| 111 | + image_templates:
|
| 112 | + - "ghcr.io/conflicthq/scuttlebot:{{ .Tag }}-amd64"
|
| 113 | + dockerfile: deploy/docker/Dockerfile.release
|
| 114 | + use: buildx
|
| 115 | + build_flag_templates:
|
| 116 | + - "--platform=linux/amd64"
|
| 117 | + - "--label=org.opencontainers.image.title=scuttlebot"
|
| 118 | + - "--label=org.opencontainers.image.version={{ .Version }}"
|
| 119 | + - "--label=org.opencontainers.image.source=https://github.com/ConflictHQ/scuttlebot"
|
| 120 | +
|
| 121 | + - id: scuttlebot-arm64
|
| 122 | + ids: [scuttlebot]
|
| 123 | + image_templates:
|
| 124 | + - "ghcr.io/conflicthq/scuttlebot:{{ .Tag }}-arm64"
|
| 125 | + dockerfile: deploy/docker/Dockerfile.release
|
| 126 | + use: buildx
|
| 127 | + build_flag_templates:
|
| 128 | + - "--platform=linux/arm64"
|
| 129 | + - "--label=org.opencontainers.image.title=scuttlebot"
|
| 130 | + - "--label=org.opencontainers.image.version={{ .Version }}"
|
| 131 | + - "--label=org.opencontainers.image.source=https://github.com/ConflictHQ/scuttlebot"
|
| 132 | + goarch: arm64
|
| 133 | +
|
| 134 | +docker_manifests:
|
| 135 | + - name_template: "ghcr.io/conflicthq/scuttlebot:{{ .Tag }}"
|
| 136 | + image_templates:
|
| 137 | + - "ghcr.io/conflicthq/scuttlebot:{{ .Tag }}-amd64"
|
| 138 | + - "ghcr.io/conflicthq/scuttlebot:{{ .Tag }}-arm64"
|
| 139 | + - name_template: "ghcr.io/conflicthq/scuttlebot:latest"
|
| 140 | + image_templates:
|
| 141 | + - "ghcr.io/conflicthq/scuttlebot:{{ .Tag }}-amd64"
|
| 142 | + - "ghcr.io/conflicthq/scuttlebot:{{ .Tag }}-arm64"
|
| 143 | +
|
| 144 | +release:
|
| 145 | + github:
|
| 146 | + owner: ConflictHQ
|
| 147 | + name: scuttlebot
|
| 148 | + draft: false
|
| 149 | + prerelease: auto
|
| 150 | + header: |
|
| 151 | + ## scuttlebot {{ .Tag }}
|
| 152 | +
|
| 153 | + Run a fleet of AI agents. Watch them work. Talk to them directly.
|
| 154 | +
|
| 155 | + **[Documentation →](https://scuttlebot.dev)**
|
| 156 | +
|
| 157 | + ### Install
|
| 158 | +
|
| 159 | + ```bash
|
| 160 | + # macOS / Linux — daemon + CLI
|
| 161 | + curl -sSL https://github.com/ConflictHQ/scuttlebot/releases/download/{{ .Tag }}/scuttlebot_{{ .Version }}_$(uname -s | tr '[:upper:]' '[:lower:]')_$(uname -m | sed s/x86_64/amd6 |