@bniladridas/cursor 0.1.13 → 0.1.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/formula-sha.yml +26 -16
- package/.github/workflows/release.yml +32 -13
- package/README.md +6 -1
- package/install.sh +51 -0
- package/package.json +1 -1
- package/release/checksums.txt +4 -3
- package/release/cursor-linux/cursor_v0.1.15_linux_amd64.tar.gz +0 -0
- package/release/cursor-macos/cursor-0.1.15.arm64_sequoia.bottle.tar.gz +0 -0
- package/release/cursor-macos/cursor_v0.1.15_darwin_arm64.tar.gz +0 -0
- package/release/cursor-windows/cursor__windows_amd64.zip +0 -0
- package/Formula/cursor.rb +0 -50
- package/release/cursor-linux/cursor_v0.1.13_linux_amd64.tar.gz +0 -0
- package/release/cursor-macos/cursor_v0.1.13_darwin_arm64.tar.gz +0 -0
|
@@ -10,32 +10,35 @@ on:
|
|
|
10
10
|
|
|
11
11
|
permissions:
|
|
12
12
|
contents: write
|
|
13
|
-
pull-requests: write
|
|
14
13
|
|
|
15
14
|
jobs:
|
|
16
15
|
update:
|
|
17
16
|
runs-on: ubuntu-latest
|
|
18
17
|
|
|
19
18
|
steps:
|
|
20
|
-
- uses: actions/checkout@v4
|
|
21
|
-
with:
|
|
22
|
-
fetch-depth: 0
|
|
23
|
-
|
|
24
19
|
- uses: actions/create-github-app-token@v3
|
|
25
|
-
id:
|
|
20
|
+
id: tap-token
|
|
26
21
|
with:
|
|
27
22
|
client-id: ${{ secrets.CURSOR_BOT_CLIENT_ID }}
|
|
28
23
|
private-key: ${{ secrets.CURSOR_BOT_PRIVATE_KEY }}
|
|
24
|
+
owner: palmshed
|
|
25
|
+
repositories: homebrew-cursor
|
|
29
26
|
|
|
30
27
|
- name: Resolve tag
|
|
31
28
|
id: tag
|
|
32
29
|
run: printf 'tag=%s\n' "${{ inputs.tag }}" >> "$GITHUB_OUTPUT"
|
|
33
30
|
|
|
34
31
|
- name: Apply sha
|
|
32
|
+
env:
|
|
33
|
+
GH_TOKEN: ${{ steps.tap-token.outputs.token }}
|
|
35
34
|
run: |
|
|
36
35
|
tag="${{ steps.tag.outputs.tag }}"
|
|
37
36
|
version="${tag#v}"
|
|
38
37
|
|
|
38
|
+
TAPDIR=$(mktemp -d)
|
|
39
|
+
git clone https://github.com/palmshed/homebrew-cursor "$TAPDIR"
|
|
40
|
+
cd "$TAPDIR"
|
|
41
|
+
|
|
39
42
|
url="https://github.com/bniladridas/cursor/archive/refs/tags/${tag}.tar.gz"
|
|
40
43
|
curl -fsSL "$url" -o source.tar.gz
|
|
41
44
|
sha="$(sha256sum source.tar.gz | awk '{print $1}')"
|
|
@@ -53,13 +56,20 @@ jobs:
|
|
|
53
56
|
rm bottle.tar.gz
|
|
54
57
|
fi
|
|
55
58
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
59
|
+
git config user.name "${{ steps.tap-token.outputs.app-slug }}[bot]"
|
|
60
|
+
git config user.email "${{ steps.tap-token.outputs.app-id }}+${{ steps.tap-token.outputs.app-slug }}[bot]@users.noreply.github.com"
|
|
61
|
+
git remote set-url origin https://x-access-token:${GH_TOKEN}@github.com/palmshed/homebrew-cursor
|
|
62
|
+
branch="formula-sha-${tag}"
|
|
63
|
+
git checkout -b "$branch"
|
|
64
|
+
git add Formula/cursor.rb
|
|
65
|
+
git commit -m "chore: update formula for ${tag}"
|
|
66
|
+
git push origin "$branch"
|
|
67
|
+
gh pr create \
|
|
68
|
+
--repo palmshed/homebrew-cursor \
|
|
69
|
+
--base main \
|
|
70
|
+
--head "$branch" \
|
|
71
|
+
--title "chore: update formula for ${tag}" \
|
|
72
|
+
--body "Manual formula update for ${tag}." \
|
|
73
|
+
--fill
|
|
74
|
+
gh pr merge --squash --delete-branch --repo palmshed/homebrew-cursor || \
|
|
75
|
+
echo "merge failed (race or conflict), PR is open for manual merge"
|
|
@@ -7,7 +7,6 @@ on:
|
|
|
7
7
|
|
|
8
8
|
permissions:
|
|
9
9
|
contents: write
|
|
10
|
-
pull-requests: write
|
|
11
10
|
id-token: write
|
|
12
11
|
|
|
13
12
|
jobs:
|
|
@@ -71,7 +70,7 @@ jobs:
|
|
|
71
70
|
# build bottle
|
|
72
71
|
mkdir -p bottle/cursor/${version}/bin
|
|
73
72
|
cp ../build/bin/cursor-agent bottle/cursor/${version}/bin/cursor-agent
|
|
74
|
-
tar -C bottle -czf
|
|
73
|
+
tar -C bottle -czf cursor-${version}.arm64_sequoia.bottle.tar.gz cursor
|
|
75
74
|
|
|
76
75
|
- uses: actions/upload-artifact@v6
|
|
77
76
|
with:
|
|
@@ -130,6 +129,14 @@ jobs:
|
|
|
130
129
|
client-id: ${{ secrets.CURSOR_BOT_CLIENT_ID }}
|
|
131
130
|
private-key: ${{ secrets.CURSOR_BOT_PRIVATE_KEY }}
|
|
132
131
|
|
|
132
|
+
- uses: actions/create-github-app-token@v3
|
|
133
|
+
id: tap-token
|
|
134
|
+
with:
|
|
135
|
+
client-id: ${{ secrets.CURSOR_BOT_CLIENT_ID }}
|
|
136
|
+
private-key: ${{ secrets.CURSOR_BOT_PRIVATE_KEY }}
|
|
137
|
+
owner: palmshed
|
|
138
|
+
repositories: homebrew-cursor
|
|
139
|
+
|
|
133
140
|
- name: Download artifacts
|
|
134
141
|
uses: actions/download-artifact@v6
|
|
135
142
|
with:
|
|
@@ -166,15 +173,37 @@ jobs:
|
|
|
166
173
|
--title "$GITHUB_REF_NAME" \
|
|
167
174
|
--generate-notes
|
|
168
175
|
|
|
169
|
-
- name: Update Homebrew formula
|
|
176
|
+
- name: Update Homebrew tap formula
|
|
177
|
+
env:
|
|
178
|
+
GH_TOKEN: ${{ steps.tap-token.outputs.token }}
|
|
170
179
|
run: |
|
|
171
180
|
version="${GITHUB_REF_NAME#v}"
|
|
181
|
+
TAPDIR=$(mktemp -d)
|
|
182
|
+
git clone https://github.com/palmshed/homebrew-cursor "$TAPDIR"
|
|
183
|
+
cd "$TAPDIR"
|
|
172
184
|
sed -i "s|url \".*\"|url \"https://github.com/bniladridas/cursor/archive/refs/tags/${GITHUB_REF_NAME}.tar.gz\"|" Formula/cursor.rb
|
|
173
185
|
sed -i "s|sha256 \".*\"|sha256 \"${SOURCE_SHA}\"|" Formula/cursor.rb
|
|
174
186
|
sed -i "s|root_url \".*\"|root_url \"https://github.com/bniladridas/cursor/releases/download/${GITHUB_REF_NAME}\"|" Formula/cursor.rb
|
|
175
187
|
if [ -n "${BOTTLE_SHA}" ]; then
|
|
176
188
|
sed -i "s|sha256 arm64_sequoia: \".*\"|sha256 arm64_sequoia: \"${BOTTLE_SHA}\"|" Formula/cursor.rb
|
|
177
189
|
fi
|
|
190
|
+
git config user.name "${{ steps.tap-token.outputs.app-slug }}[bot]"
|
|
191
|
+
git config user.email "${{ steps.tap-token.outputs.app-id }}+${{ steps.tap-token.outputs.app-slug }}[bot]@users.noreply.github.com"
|
|
192
|
+
git remote set-url origin https://x-access-token:${GH_TOKEN}@github.com/palmshed/homebrew-cursor
|
|
193
|
+
branch="release/${GITHUB_REF_NAME}"
|
|
194
|
+
git checkout -b "$branch"
|
|
195
|
+
git add Formula/cursor.rb
|
|
196
|
+
git commit -m "chore: update formula for ${GITHUB_REF_NAME}"
|
|
197
|
+
git push origin "$branch"
|
|
198
|
+
gh pr create \
|
|
199
|
+
--repo palmshed/homebrew-cursor \
|
|
200
|
+
--base main \
|
|
201
|
+
--head "$branch" \
|
|
202
|
+
--title "chore: update formula for ${GITHUB_REF_NAME}" \
|
|
203
|
+
--body "Automated formula update for ${GITHUB_REF_NAME}." \
|
|
204
|
+
--fill
|
|
205
|
+
gh pr merge --squash --delete-branch --repo palmshed/homebrew-cursor || \
|
|
206
|
+
echo "merge failed (race or conflict), PR is open for manual merge"
|
|
178
207
|
|
|
179
208
|
- name: Update package version
|
|
180
209
|
run: |
|
|
@@ -187,13 +216,3 @@ jobs:
|
|
|
187
216
|
run: |
|
|
188
217
|
echo "//registry.npmjs.org/:_authToken=${NPM_TOKEN}" > ~/.npmrc
|
|
189
218
|
npm publish --access public --provenance 2>&1 || echo "already published"
|
|
190
|
-
|
|
191
|
-
- name: Create version update PR
|
|
192
|
-
uses: peter-evans/create-pull-request@v8
|
|
193
|
-
with:
|
|
194
|
-
token: ${{ steps.app-token.outputs.token }}
|
|
195
|
-
base: main
|
|
196
|
-
branch: release/${{ github.ref_name }}
|
|
197
|
-
title: "chore: update formula and package for ${{ github.ref_name }}"
|
|
198
|
-
body: Updates formula and package for ${{ github.ref_name }}.
|
|
199
|
-
add-paths: Formula/cursor.rb, package.json
|
package/README.md
CHANGED
|
@@ -16,10 +16,15 @@ npm i -g @bniladridas/cursor
|
|
|
16
16
|
|
|
17
17
|
**Homebrew** (binary: `cursor-agent`):
|
|
18
18
|
```bash
|
|
19
|
-
brew tap
|
|
19
|
+
brew tap palmshed/cursor
|
|
20
20
|
brew install cursor
|
|
21
21
|
```
|
|
22
22
|
|
|
23
|
+
**Curl** (binary: `cursor-agent`):
|
|
24
|
+
```bash
|
|
25
|
+
curl -fsSL https://github.com/bniladridas/cursor/raw/main/install.sh | sh
|
|
26
|
+
```
|
|
27
|
+
|
|
23
28
|
**From source** (binary: `cursor`):
|
|
24
29
|
```bash
|
|
25
30
|
cmake -S . -B build && cmake --build build
|
package/install.sh
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
set -euo pipefail
|
|
3
|
+
|
|
4
|
+
REPO="bniladridas/cursor"
|
|
5
|
+
INSTALL_DIR="${INSTALL_DIR:-/usr/local/bin}"
|
|
6
|
+
VERSION="${VERSION:-}"
|
|
7
|
+
|
|
8
|
+
if [ -z "$VERSION" ]; then
|
|
9
|
+
VERSION=$(curl -fsSL "https://api.github.com/repos/$REPO/releases/latest" | grep '"tag_name"' | cut -d'"' -f4)
|
|
10
|
+
fi
|
|
11
|
+
VERSION="${VERSION#v}"
|
|
12
|
+
|
|
13
|
+
case "$(uname -s)" in
|
|
14
|
+
Darwin) OS="darwin" ;;
|
|
15
|
+
Linux) OS="linux" ;;
|
|
16
|
+
*) echo "unsupported OS: $(uname -s)"; exit 1 ;;
|
|
17
|
+
esac
|
|
18
|
+
|
|
19
|
+
case "$(uname -m)" in
|
|
20
|
+
arm64|aarch64) ARCH="arm64" ;;
|
|
21
|
+
x86_64|amd64) ARCH="amd64" ;;
|
|
22
|
+
*) echo "unsupported arch: $(uname -m) (only amd64 and arm64 are supported)"; exit 1 ;;
|
|
23
|
+
esac
|
|
24
|
+
|
|
25
|
+
if [ "$OS" = "darwin" ] && [ "$ARCH" = "arm64" ]; then
|
|
26
|
+
ARCHIVE="cursor_v${VERSION}_darwin_arm64.tar.gz"
|
|
27
|
+
BINARY="cursor-macos"
|
|
28
|
+
elif [ "$OS" = "darwin" ] && [ "$ARCH" = "amd64" ]; then
|
|
29
|
+
ARCHIVE="cursor_v${VERSION}_darwin_amd64.tar.gz"
|
|
30
|
+
BINARY="cursor-macos"
|
|
31
|
+
elif [ "$OS" = "linux" ]; then
|
|
32
|
+
ARCHIVE="cursor_v${VERSION}_linux_amd64.tar.gz"
|
|
33
|
+
BINARY="cursor-linux"
|
|
34
|
+
fi
|
|
35
|
+
|
|
36
|
+
URL="https://github.com/$REPO/releases/download/v${VERSION}/$ARCHIVE"
|
|
37
|
+
TMPDIR=$(mktemp -d)
|
|
38
|
+
trap 'rm -rf "$TMPDIR"' EXIT
|
|
39
|
+
|
|
40
|
+
echo "downloading cursor v${VERSION} for ${OS}/${ARCH}..."
|
|
41
|
+
curl -fsSL "$URL" -o "$TMPDIR/$ARCHIVE" || { echo "download failed: $URL"; exit 1; }
|
|
42
|
+
|
|
43
|
+
echo "extracting..."
|
|
44
|
+
tar -xzf "$TMPDIR/$ARCHIVE" -C "$TMPDIR"
|
|
45
|
+
|
|
46
|
+
mkdir -p "$INSTALL_DIR"
|
|
47
|
+
cp "$TMPDIR/$BINARY" "$INSTALL_DIR/cursor-agent"
|
|
48
|
+
chmod +x "$INSTALL_DIR/cursor-agent"
|
|
49
|
+
|
|
50
|
+
echo "installed cursor-agent to $INSTALL_DIR/cursor-agent"
|
|
51
|
+
echo "run: cursor-agent --help"
|
package/package.json
CHANGED
package/release/checksums.txt
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
84fd2272ff374dbb02a6f76e5f280b722daeb50363661b8cdee876db09978567 release/cursor-macos/cursor_v0.1.15_darwin_arm64.tar.gz
|
|
2
|
+
def0dc5a0326e9a1583547607a43c4676ebbe65ef37fc3629fa1e333f27443ed release/cursor-macos/cursor-0.1.15.arm64_sequoia.bottle.tar.gz
|
|
3
|
+
d180ad0e8851d510378faaad8c1739439419fb0e7c91896c263ed22ba3144d4f release/cursor-linux/cursor_v0.1.15_linux_amd64.tar.gz
|
|
4
|
+
8598ddaf4e8471a4fb003e99a2f478047135c6ad26908ce0d0998728e343ead3 release/cursor-windows/cursor__windows_amd64.zip
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/Formula/cursor.rb
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
class Cursor < Formula
|
|
2
|
-
desc "Professional AI agent with command execution and file operations"
|
|
3
|
-
homepage "https://github.com/bniladridas/cursor"
|
|
4
|
-
url "https://github.com/bniladridas/cursor/archive/refs/tags/v0.1.13.tar.gz"
|
|
5
|
-
sha256 "11aa460a091e963cd09ac245eb10d0ed32997754687768b90c0c916f31b44552"
|
|
6
|
-
license "Apache-2.0"
|
|
7
|
-
|
|
8
|
-
bottle do
|
|
9
|
-
root_url "https://github.com/bniladridas/cursor/archive/refs/tags/v0.1.13.tar.gz"
|
|
10
|
-
sha256 arm64_sequoia: "PLACEHOLDER"
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
depends_on "cmake" => :build
|
|
14
|
-
depends_on "cpr"
|
|
15
|
-
depends_on "nlohmann-json"
|
|
16
|
-
|
|
17
|
-
def install
|
|
18
|
-
system "cmake", "-S", ".", "-B", "build", "-DCURSOR_BUILD_TESTS:BOOL=OFF", *std_cmake_args
|
|
19
|
-
system "cmake", "--build", "build"
|
|
20
|
-
bin.install "build/bin/cursor-agent"
|
|
21
|
-
|
|
22
|
-
(etc/"cursor-agent").install ".env.example" => "config.env"
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
def post_install
|
|
26
|
-
(var/"cursor-agent").mkpath
|
|
27
|
-
unless (etc/"cursor-agent/.env").exist?
|
|
28
|
-
cp etc/"cursor-agent/config.env", etc/"cursor-agent/.env"
|
|
29
|
-
end
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
test do
|
|
33
|
-
system "#{bin}/cursor-agent", "--version"
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
def caveats
|
|
37
|
-
<<~EOS
|
|
38
|
-
Configuration file is located at:
|
|
39
|
-
#{etc}/cursor-agent/.env
|
|
40
|
-
|
|
41
|
-
Edit this file with your API keys:
|
|
42
|
-
- TOGETHER_API_KEY (for online mode)
|
|
43
|
-
- CEREBRAS_API_KEY (for Cerebras mode)
|
|
44
|
-
- SERPAPI_KEY (for web search)
|
|
45
|
-
|
|
46
|
-
Data directory:
|
|
47
|
-
#{var}/cursor-agent/
|
|
48
|
-
EOS
|
|
49
|
-
end
|
|
50
|
-
end
|
|
Binary file
|
|
Binary file
|