Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ body:
attributes:
label: Steps to reproduce
placeholder: |
1. Click the coffee cup in the menu bar
1. Click the Sleepless agent in the menu bar
2. Toggle the switch on
3. Close the lid (on battery)
validations:
Expand Down
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
name: Feature request
description: Suggest an idea for Sleepless
description: Suggest an idea for Sleepless Agents
labels: ["enhancement"]
body:
- type: markdown
attributes:
value: |
Sleepless is deliberately small. Features that grow the privilege surface (more
Sleepless Agents is deliberately small. Features that grow the privilege surface (more
sudo, a helper daemon, a kext) are unlikely to land — the tight security model is a
core feature. Ideas that keep it small, native, and honest are very welcome.
- type: textarea
Expand Down
2 changes: 1 addition & 1 deletion .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<!-- Thanks for contributing to Sleepless! Keep PRs small and focused. -->
<!-- Thanks for contributing to Sleepless Agents! Keep PRs small and focused. -->

## What does this change?

Expand Down
18 changes: 13 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,13 +22,21 @@ jobs:
swiftc --version
echo "SDK: $(xcrun --sdk macosx --show-sdk-version 2>/dev/null || echo n/a)"

- name: Compile App.swift (zero-warning gate)
- name: Compile Swift sources (zero-warning gate)
run: |
set -euo pipefail
# Local + release builds target arm64-apple-macos26.0. CI compiles against the
# runner's SDK (which may predate macOS 26) purely as a clean-compile smoke test,
# so it does not force the 26.0 deployment target here.
swiftc -O -parse-as-library -framework AppKit App.swift -o /tmp/Sleepless 2> build.log \
swiftc -O -parse-as-library \
-framework AppKit -framework ServiceManagement -framework Network \
AppLogger.swift \
ShellRunner.swift \
PowerController.swift \
AgentMonitor.swift \
ConnectivityMonitor.swift \
App.swift \
-o /tmp/Sleepless 2> build.log \
|| { echo "::group::swiftc output"; cat build.log; echo "::endgroup::"; exit 1; }
cat build.log
if grep -q "warning:" build.log; then
Expand All @@ -42,11 +50,11 @@ jobs:
set -euo pipefail
# Build the full bundle (conservative target so it works on the runner's SDK).
TARGET="arm64-apple-macos13.0" ./build.sh "$PWD/dist"
ls -la "dist/Sleepless.app/Contents" "dist/Sleepless.app/Contents/MacOS"
ls -la "dist/Sleepless Agents.app/Contents" "dist/Sleepless Agents.app/Contents/MacOS"

- name: Upload app artifact
uses: actions/upload-artifact@v4
with:
name: Sleepless-app
path: dist/Sleepless.app
name: Sleepless-Agents-app
path: dist/Sleepless Agents.app
if-no-files-found: error
20 changes: 10 additions & 10 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,17 +7,17 @@ name: Release

on:
push:
tags: ['v*']
tags: ["v*"]
workflow_dispatch:
inputs:
tag:
description: 'Tag to (re)build a release for, e.g. v1.1.0'
description: "Tag to (re)build a release for, e.g. v1.1.0"
required: true

permissions:
contents: write # create the release + upload assets
id-token: write # Sigstore OIDC, required by attest-build-provenance
attestations: write # write the build-provenance attestation to this repo
contents: write # create the release + upload assets
id-token: write # Sigstore OIDC, required by attest-build-provenance
attestations: write # write the build-provenance attestation to this repo

jobs:
release:
Expand All @@ -40,20 +40,20 @@ jobs:
swiftc --version
echo "SDK: $(xcrun --sdk macosx --show-sdk-version 2>/dev/null || echo n/a)"

- name: Build Sleepless.app
- name: Build Sleepless Agents.app
run: |
set -euo pipefail
# Conservative deployment target so it compiles against the runner SDK and
# runs on macOS 13+. (Local + tested target is arm64-apple-macos26.0.)
TARGET="arm64-apple-macos13.0" ./build.sh "$PWD/dist"
codesign --verify --verbose=1 "dist/Sleepless.app"
codesign --verify --verbose=1 "dist/Sleepless Agents.app"

- name: Zip the app bundle
id: zip
run: |
set -euo pipefail
ASSET="Sleepless-${{ steps.ver.outputs.version }}.zip"
ditto -c -k --keepParent "dist/Sleepless.app" "$ASSET"
ditto -c -k --keepParent "dist/Sleepless Agents.app" "$ASSET"
echo "asset=$ASSET" >> "$GITHUB_OUTPUT"
ls -la "$ASSET"

Expand Down Expand Up @@ -98,9 +98,9 @@ jobs:
ASSET="${{ steps.zip.outputs.asset }}"
if gh release view "$TAG" >/dev/null 2>&1; then
gh release upload "$TAG" "$ASSET" SHA256SUMS --clobber
gh release edit "$TAG" --notes-file NOTES.md --title "Sleepless ${{ steps.ver.outputs.version }}"
gh release edit "$TAG" --notes-file NOTES.md --title "Sleepless Agents ${{ steps.ver.outputs.version }}"
else
gh release create "$TAG" "$ASSET" SHA256SUMS \
--title "Sleepless ${{ steps.ver.outputs.version }}" \
--title "Sleepless Agents ${{ steps.ver.outputs.version }}" \
--notes-file NOTES.md
fi
Loading
Loading