feat: README how-to + 1.0 release pipeline preparation - #117
Conversation
U1: Rewrite README.md with Mac → Grok Bot Linux featured path
- Lead with Linux agent runtime (Grok Bot) as the featured sync target
- Demote Mac mini / second Mac below the fold (still supported)
- Add numbered CLI primitives for agent-executable setup
- Document frozen YAML for Linux sink (live_cdp, blocklist)
- Honest status: Linux SQLite write is 0, success is live CDP inject
- Archive naming: agentcookie_1.0.0_{platform}_{arch}.tar.gz
U2: Update satellite docs
- docs/faq.md: Fix MIT license (was Apache 2.0), update Docker paragraph
- docs/consumption.md: Clarify Linux verification (live CDP, not sidecar)
- docs/architecture.md: Add policy override note for trusted boxes
- docs/threat-model.md: v1.0 version bump, policy override documentation
- examples/sink.yaml: Rewrite for live_cdp attach (not cdp.managed)
- CHANGELOG.md: Add [1.0.0] - 2026-08-13 section
U3: Update skill files
- skill/SKILL.md: Remove v0.3 planned, add Linux featured path
- skill/prompts/install-on-both-machines.md: Two-machine Linux playbook
U4: Update release notes template
- .github/RELEASE_NOTES_TEMPLATE.md: Replace closed-beta with 1.0 content
U5: Update packaging
- .goreleaser.yaml: Add Linux builds (amd64, arm64 with cross-compiler)
- .github/workflows/release.yml: Split darwin/linux jobs, go-version-file
- scripts/release-tarball.sh: Use underscore naming scheme
- scripts/install-beta.sh: Update pattern to *darwin_arm64.tar.gz
Verification:
- go build ./... ✓
- go vet ./... ✓
- go test ./... ✓ (all 26 packages pass)
- goreleaser check ✓
- No forbidden phrases in key files ✓
- No changes to denylisted files ✓
Does NOT cut the v1.0.0 tag or publish a GitHub Release (U6 is human-gated).
Co-authored-by: Matt Van Horn <mvanhorn@users.noreply.github.com>
…aser configs 1. Featured how-to: ATTACH, not start Chrome - README and skill now probe existing debug ports (9222-9229) first - Only start Chrome as fallback when nothing is listening - Avoids KTD2 failure mode (second Chrome fighting existing one) 2. Soften README lede - 'wakes up logged in' -> 'Cookie-authenticated sites show logged-in UI' - Explicitly note Google/Workspace stay logged out (DBSC) 3. Isolate linux GoReleaser builds from darwin - .goreleaser.yaml: darwin-only with codesign hook - .goreleaser.linux.yaml: linux amd64/arm64 with cross-compiler - release.yml updated to use --config .goreleaser.linux.yaml Verified: - go test ./... passes - goreleaser check on both configs passes - README/skill no longer start Chrome as featured first step Co-authored-by: Matt Van Horn <mvanhorn@users.noreply.github.com>
… adapters) Co-authored-by: Matt Van Horn <mvanhorn@users.noreply.github.com>
Include #115 (auto-discover extra Chrome profiles) and #116 (paste extra-profile cookies through adapters) in the 1.0 release: CHANGELOG [1.0.0]: - Mac extra Chrome profiles auto-discovered and decrypted - Extra-profile cookies flow to sidecar, adapters, and live CDP - Sink adapters union extra-profile cookies through same blocklist - doctor/status report discovered profile stores README Status / Working today: - Extra Chrome profile discovery on Mac - Sink adapters union extra-profile cookies README Honest limits: - Linux extra-profile Chrome SQLite stays unread (no libsecret) RELEASE_NOTES_TEMPLATE.md: - Extra Chrome profile discovery in Highlights - Linux extra-profile limit in Honest limits Verified: - go test ./... passes - goreleaser check on both configs passes Co-authored-by: Matt Van Horn <mvanhorn@users.noreply.github.com>
|
Bugbot is not enabled for your account, so this pull request was not reviewed. Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs. |
Greptile SummaryPrepares agentcookie v1.0 documentation and a split Linux/macOS release pipeline focused on live-CDP cookie synchronization.
Confidence Score: 3/5The release preparation should not merge until the pipeline publishes the intended v1.0 notes and the Linux release-note verification instructions are made executable. The tag workflow creates a release using generated notes rather than the newly authored template, while the template's Linux path fails when it attempts to verify against a checksum file it never downloaded. Files Needing Attention: .github/workflows/release.yml and .github/RELEASE_NOTES_TEMPLATE.md
|
| Filename | Overview |
|---|---|
| .github/workflows/release.yml | Splits platform builds and manually publishes combined assets, but does not pass the prepared release-notes template to the release command. |
| .github/RELEASE_NOTES_TEMPLATE.md | Adds comprehensive v1.0 notes, but the Linux verification commands reference a checksum manifest they do not download. |
| .goreleaser.linux.yaml | Adds distinct CGO-enabled Linux amd64 and arm64 builds with matching archive names. |
| README.md | Reframes setup around live CDP injection on Linux and includes complete archive-verification commands. |
| scripts/release-tarball.sh | Renames the signed macOS archive consistently and strips the leading v from the tag version. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart LR
T[v1.0.0 tag] --> L[Build Linux amd64 and arm64]
T --> D[Build, sign, and notarize macOS arm64]
L --> LA[Upload Linux archives]
D --> DA[Upload Darwin archive]
LA --> P[Download combined artifacts]
DA --> P
P --> C[Generate checksums]
C --> R[Create GitHub Release]
Reviews (1): Last reviewed commit: "feat: add extra Chrome profile discovery..." | Re-trigger Greptile
| dist/checksums.txt \ | ||
| --title "agentcookie ${{ github.ref_name }}" \ | ||
| --generate-notes | ||
| env: | ||
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
There was a problem hiding this comment.
| # On Linux | ||
| curl -LO https://github.com/mvanhorn/agentcookie/releases/download/v1.0.0/agentcookie_1.0.0_linux_amd64.tar.gz | ||
| sha256sum -c checksums.txt --ignore-missing | ||
| tar -xzf agentcookie_1.0.0_linux_amd64.tar.gz |
There was a problem hiding this comment.
Linux checksum manifest is missing
When a Linux user follows these commands in a clean directory, sha256sum references a checksums.txt file that was never downloaded, causing the documented verification step to fail.
| # On Linux | |
| curl -LO https://github.com/mvanhorn/agentcookie/releases/download/v1.0.0/agentcookie_1.0.0_linux_amd64.tar.gz | |
| sha256sum -c checksums.txt --ignore-missing | |
| tar -xzf agentcookie_1.0.0_linux_amd64.tar.gz | |
| # On Linux | |
| curl -LO https://github.com/mvanhorn/agentcookie/releases/download/v1.0.0/agentcookie_1.0.0_linux_amd64.tar.gz | |
| curl -LO https://github.com/mvanhorn/agentcookie/releases/download/v1.0.0/checksums.txt | |
| sha256sum -c checksums.txt --ignore-missing | |
| tar -xzf agentcookie_1.0.0_linux_amd64.tar.gz |
|
|
||
| # Use goreleaser with the linux-specific config | ||
| - name: goreleaser linux | ||
| uses: goreleaser/goreleaser-action@v6 |
There was a problem hiding this comment.
Release actions use mutable tags
The new Linux build and artifact-transfer steps execute actions through mutable major-version tags in a release workflow with contents: write; an upstream tag change can alter the release build or assets without a repository change, and the GoReleaser action receives the repository token. Pin these new action references to immutable commit SHAs. How this was verified: The added GoReleaser step uses @v6 with GITHUB_TOKEN, while the workflow grants contents: write.
Summary
Prepares documentation and packaging for the v1.0.0 release. Features Mac → Grok Bot Linux cookie sync as the primary path. Does NOT cut the v1.0.0 tag or publish a GitHub Release (U6 is human-gated).
Changes
U1: README.md
agentcookie_1.0.0_{platform}_{arch}.tar.gzU2: Satellite docs
docs/faq.md: Fix MIT license (was Apache 2.0), update Docker paragraphdocs/consumption.md: Clarify Linux verification (live CDP, not sidecar)docs/architecture.md: Add policy override note for trusted boxesdocs/threat-model.md: v1.0 version bump, policy override documentationexamples/sink.yaml: Rewrite for live_cdp attach (not cdp.managed)CHANGELOG.md: Add[1.0.0] - 2026-08-13sectionU3: Skill files
skill/SKILL.md: Remove v0.3 planned references, add Linux featured pathskill/prompts/install-on-both-machines.md: Two-machine Linux playbookU4: Release notes template
.github/RELEASE_NOTES_TEMPLATE.md: Replace closed-beta with 1.0 contentU5: Packaging
.goreleaser.yaml: Add Linux builds (amd64, arm64 with cross-compiler).github/workflows/release.yml: Split darwin/linux jobs, usego-version-file: go.modscripts/release-tarball.sh: Use underscore naming schemescripts/install-beta.sh: Update pattern to*darwin_arm64.tar.gzPlan document
docs/plans/2026-08-13-1720-feat-readme-howto-release-plan.md: Canonical planVerified
go build ./...go vet ./...go test ./...(all 26 packages pass)goreleaser checkinternal/config/allowlist.go,internal/protocol/allowlist.go,internal/cli/sink.go,internal/livecdp/*)Notes
policy: blocklistfor sync-all on trusted boxesPolicyModeForSinkor any sink inject codeagentcookie-VERSION-darwin-arm64.tar.gztoagentcookie_VERSION_darwin_arm64.tar.gz