-
Notifications
You must be signed in to change notification settings - Fork 185
chore: upgrade dependencies to latest compatible versions #59
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
5490e71 to
dc5ff43
Compare
Identified breaking change in @anthropic-ai/claude-code v2.0.25 where SDK files (sdk.mjs, sdk.d.ts) are no longer included in npm package. - Last working version: 2.0.24 - Breaking change: 2.0.25+ - Upgraded from: 2.0.14 → 2.0.24 - @anthropic-ai/sdk: 0.65.0 → 0.68.0 - @modelcontextprotocol/sdk: 1.17.3 → 1.20.2 - axios: 1.11.0 → 1.13.1 - chalk: 5.6.0 → 5.6.2 - fastify: 5.5.0 → 5.6.1 - ink: 6.2.1 → 6.4.0 - react: 19.1.1 → 19.2.0 - tar: 7.4.3 → 7.5.2 - And other minor/patch updates - eslint: 9.33.0 → 9.39.0 - pkgroll: 2.15.3 → 2.20.1 - @types/node: 24.3.0 → 24.9.2 - And other minor/patch updates ✅ Build successful ✅ TypeScript compilation passed ✅ No breaking changes detected See UPGRADE_FINDINGS.md for detailed analysis.
dc5ff43 to
b698f64
Compare
|
Hi there! I noticed there are three PRs (#51, #54, and this one) all working on Claude Code version upgrades. It would be great to coordinate our efforts rather than having competing solutions. Current Situation
ProposalI'd like to suggest we work together to test and merge these upgrades in stages:
This staged approach gives us:
Thoughts? Happy to help test and coordinate. cc @luke3butler @hottomato-c @ex3ndr /cc #53 |
|
Hi @mrdavidlaing, really appreciate your work on coordinating these upgrades. I have merged the conservative 0.24 version already, haven't deployed yet. You're probably understand the implications of the upgrade more than I do at this point, I was wondering if you are interested to become one of the maintainers of the project so you can merge PRs without being blocked by me / @ex3ndr Related to this I saw a PR to use system installed claude, that might also be something for us to explore related to versioning. This may help avoid upgrading and publishing a new package all the time or figuring out automatic update updates, but also will introduce issues when breaking changes are made. |
|
Hi @bra1nDump! Thanks so much for merging the v2.0.24 upgrade - great to see it in! 🙏 Next: v2.0.25+ Breaking ChangesNow that we have a solid v2.0.24 foundation, I'm happy to help coordinate the v2.0.25+ upgrade with @luke3butler and @hottomato-c. PR #54 looks like the right approach - it just needs thorough testing of mode switching (per @ex3ndr's question) and the agent-sdk integration. I'd like to suggest we get the PR authors on a call to:
This would also give us a chance to discuss whether the system-installed Claude approach makes sense, and if so, how to implement it without complicating the setup for most users. After thatIf the call goes well and we can successfully coordinate the v2.0.25+ upgrade, I'd love to chat about taking on maintainer responsibilities. I use happy-cli daily and have a vested interest in keeping it working smoothly, but I think a video chat would be good to discuss expectations and responsibilities first. Sound good? |
|
Great idea to meet online. Let's get together and discuss path forward for the project Agenda
Cc @ex3ndr Link to coordinate a meeting time that will work for everyone I seeded with some of my availability slots. Link for whenever we end up calling https://meet.google.com/ain-wqsj-iaq |
|
I'm a little bit torn here on fundamentals, but maybe I'm the outlier of the group. I've been on the lookout for something that uses the agent SDK, rather than invoking the cli, as it's seems apparent that Claude is pushing developers that direction. The agent sdk advertises "Full Claude Code Feature Support", and my guess is that ongoing maintenance would be easier this way but would also look different. The fear for me is that things will get harder to maintain and control via the non-interactive cli over time. Also, using the system's version of the cli introduces the constant risk of unexpected breaking changes. That said... if retaining cli execution is the path forward, maybe a good solution is a github action/agent that runs on new cli releases that executes tests and/or analyzes for breaking changes and automatically then pushes new releases that are low-risk. |
|
Added my availability to the calendar - unfortunately I can only make workdays before PST 12:00 |
|
It looks like @bra1nDump and I can make tomorrow Saturday 15 Nov @ 10:30 PST. Proposal: Let's have anyone who can make it join us then. We might not have quorum to make decisons; but we could at least put faces to names. @luke3butler, @hottomato-c any chance you could join us then? |
|
Unfortunately it doesn't look like anyone could make it - or at least nobody that could let us into the meeting room 🥲 |
|
Apologies I have missed these notifications :/ thank you for your persistence! I think we got a shot at THE open source mobile / web hub to control all agents. Really hoping to revive the project. @Scoteezy is helping with fixing burning issues like this one. He is planning to work on happy full time for the next month+ Talked to @ex3ndr and @PeoplesGrocers - there is interest too, I believe we just need to get over the sucky initial push :) Let's try to coordinate our contributor meeting over email, since I have push notifications for that and I can't wrap my head around getting pushed notifications on GitHub :/ kirill2003de@gmail.com, I will try to find your emails and create a new thread |
|
@bra1nDump can I be added to that thread. Definitely interested in that ACP support |
|
Whilst I'd love to be part of this; I think lack of timezone alignment (I'm in Dublin, Ireland) are going to make participation impractical for me. Please keep me in the (email) loop - perhaps there is a "overnight alpha tester" role I could play :) |
|
hey all, did you end up discussing it? This project is too nice to die! |
Upgrade Dependencies to Latest Compatible Versions
Summary
This PR upgrades dependencies to their latest compatible versions while identifying and documenting the breaking change in
@anthropic-ai/claude-codethat prevents upgrading beyond v2.0.24.Changes
Claude Code SDK
Other Production Dependencies
Development Dependencies
Testing
✅ Build successful - All packages compile without errors
✅ TypeScript compilation - No type errors
✅ Unit tests - All unit tests pass. Skipped integration tests
✅ Manual testing - Confirmed functionality with Node.js 22.x LTS
SDK Migration Issue 🚨
The Problem
Starting with version 2.0.25, Anthropic intentionally removed the legacy SDK entrypoint from
@anthropic-ai/claude-code. The SDK functionality has been moved to a new package:@anthropic-ai/claude-agent-sdk.Version Testing Results
I systematically tested all versions from 2.0.14 to 2.0.31:
Working Versions (SDK files present):
Broken Versions (SDK files missing):
Why This Happened
From the official CHANGELOG.md (v2.0.25):
This is an intentional breaking change, not a packaging bug. The SDK evolved from a coding-focused tool to a general-purpose AI agent framework.
What Changed in the New SDK
Beyond the package rename, the new
@anthropic-ai/claude-agent-sdkincludes breaking changes:References
Open Questions for Maintainers
I'm happy to help with whichever direction you choose! 🙋♂️
Node.js Compatibility Note: During testing, we discovered Node.js v25.x has compatibility issues with the claude-code CLI. Recommend using Node.js 22.x LTS or 20.x LTS.