Skip to content

Conversation

@pull
Copy link

@pull pull bot commented Nov 22, 2025

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

JiriDeJonghe and others added 30 commits October 8, 2025 17:09
This workflow automatically syncs the main branch with the public
anthropics/claude-cookbooks repository daily at 8 AM UTC. It ensures
the private mirror stays up-to-date while preserving the ability to
test changes on feature branches before pushing to public.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
- pull-from-public.yml: Scheduled sync from public to private
- push-to-public.yml: Auto-sync to public on main updates

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
Ensures private syncs with public before pushing changes.
This prevents divergent histories by always having latest public changes.
…rkflows

Updates both pull-from-public.yml and push-to-public.yml to use GitHub App authentication instead of Personal Access Tokens for better security and maintainability.

Changes:
- Add step to generate token from GitHub App credentials
- Use generated token for checkout and remote authentication
- Replace PUBLIC_REPO_TOKEN references with GITHUB_TOKEN from app
- Update error messages to reflect GitHub App usage

Requires repository secrets:
- SYNC_APP_ID
- SYNC_APP_PRIVATE_KEY

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
Changes app-id reference from secrets.SYNC_APP_ID to vars.SYNC_APP_ID since the App ID is non-sensitive configuration data.

The private key remains as a secret as it contains sensitive authentication data.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
Simplified the sync workflows to use a three-branch approach:
- main: Stores sync workflows (this branch)
- staging: Active development branch with CI workflows
- public: Public-facing branch that mirrors public repo

Changes:
- Rewrote push-to-public.yml to simply push public branch to public repo
- Updated pull-from-public.yml to merge public repo changes into public branch
- Added SYNC_STRATEGY.md with comprehensive documentation
- Removed .gitattributes (no longer needed without cherry-picking)

Key improvements:
- No cherry-picking or complex git history manipulation
- staging and public can diverge until release time
- Conflicts resolved naturally during staging→public PR
- Manual reset option to sync staging with public after releases
- Supports both internal PRs and external contributions

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
Add GitHub Actions workflow to sync with public repository
…tant

Add ElevenLabs low-latency voice assistant cookbook
Prevents .github/workflows/ directory from being synced during
pull-from-public operations by restoring private workflow configs
after merge completes.

This fixes the GitHub App permission error that occurred when trying
to push workflow changes without the 'workflows' permission.

Changes:
- pull-from-public.yml: Add git checkout to restore workflows after merge
- SYNC_STRATEGY.md: Document workflow isolation strategy

Benefits:
- No GitHub App permission changes needed
- Each repo maintains independent CI/CD configuration
- Prevents accidental workflow modifications
- Resolves permission errors on push

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
…ns-clean

fix: exclude workflows from public repo sync
Previously, the pull-from-public workflow would restore workflow files
to the working directory but leave them in the merge commit. This caused
GitHub to reject the push because the App token lacks 'workflows' permission.

Now we amend the merge commit after restoring workflow files, ensuring
workflow changes are completely excluded from the commit history.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
fix(ci): amend merge commit to exclude workflow changes from sync
The previous fix was still failing because after the merge, HEAD
becomes the merge commit itself. Running `git checkout HEAD -- .github/workflows/`
was checking out workflows FROM the merge commit, which included all
the public repo changes.

Now we checkout from HEAD^1 (first parent), which is the state BEFORE
the merge. This ensures ALL workflow changes (modifications AND new
files) are properly excluded from the final commit.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
fix(ci): checkout workflows from pre-merge state (HEAD^1)
…clusion

Replace the checkout + amend approach with a cleaner solution:

**Old approach (from PR #15):**
```bash
git merge public/main --no-edit
git checkout HEAD^1 -- .github/workflows/
git add .github/workflows/
git commit --amend --no-edit
```

**New approach:**
```bash
git merge public/main --no-commit --no-ff
git restore --source=HEAD --staged --worktree .github/workflows/
git commit --no-edit -m "Merge changes from public repository"
```

**Why this is better:**
- No commit amending needed (we fix before committing)
- No HEAD^1 reference (clearer to use HEAD for pre-merge state)
- Single atomic restore command (handles staging + worktree)
- More explicit intent (--no-commit says "let me fix first")
- Handles both modified AND new workflow files

The git restore command with --staged --worktree ensures both the
staging area and working tree are reset to their pre-merge state,
removing all workflow changes (including new files like lint-format.yml).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
…-restore

refactor(ci): use --no-commit and git restore for cleaner workflow exclusion
- Replace git restore with git rm --cached -r to remove workflows from staging
- Add git checkout HEAD to restore workflows in working directory
- Add verification step to ensure no workflows in commit before pushing
- This ensures workflow files are completely excluded from the merge commit
Fix workflow sync exclusion using git rm --cached
- Add early exit when already up to date (prevents "nothing to commit" error)
- Only filter sync workflows (pull/push-to-public), not all CI workflows
- Add check for empty commits after filtering
- Remove workflow labels from issue creation (permission issue)
- Ensure sync workflows never leak into public branch

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
Fix pull-from-public workflow issues
- Update title to "Context Editing & Memory for Long-Running Agents"
- Add clear_thinking_20251015 for extended thinking management
- Add Claude Haiku 4.5 to supported models
- Include brief thinking management section

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
- Use short model name format (claude-haiku-4-5 vs full ID)
- Add %%capture to pip install cell
- Add learning objectives section with action verbs

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
- Include clear_thinking_20251015 in context management config
- Add API call pattern showing required beta flag
- Add third review to ensure clearing triggers
- Show both strategies working together (thinking first, then tool uses)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
- Update demo_helpers.py to support extended thinking parameter
- Handle thinking blocks with signatures in API responses
- Configure Session 3 demo with clear_thinking_20251015 + clear_tool_uses
- Enable extended thinking (budget_tokens=1024, max_tokens=4096)
- Fix context_management response parsing for pydantic objects
- Update all markdown to document thinking requirements accurately
- Execute notebook to generate fresh outputs showing both strategies

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
These files (.github/workflows/pull-from-public.yml, .github/workflows/push-to-public.yml, SYNC_STRATEGY.md) were added by mistake and are not related to the memory cookbook context editing changes.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
@pull pull bot locked and limited conversation to collaborators Nov 22, 2025
@pull pull bot added the ⤵️ pull label Nov 22, 2025
@pull pull bot merged commit 9e6ca61 into code:main Nov 22, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants