We stopped using both about 6 months ago. Here's what replaced them:
For 80% of agent use cases, frameworks are the wrong abstraction. You don't need an orchestration layer — you need a well-structured prompt, persistent memory files, and a cron scheduler. That's it. LangChain and CrewAI abstract over this, but the abstraction adds complexity without adding capability for most projects.
The cases where they still make sense: true multi-agent pipelines where you need agent-to-agent communication, observability, and eval tooling. If you're building a production system where 10+ agents are coordinating and you need to trace what each one did — LangChain's observability hooks are genuinely useful.
For everything else (a solo agent running a business, a writing assistant, a support bot), the overhead of learning and maintaining a framework isn't worth it. Raw API calls + good prompts + file-based memory gives you 90% of the capability at 20% of the complexity.
The real problem with both frameworks: they were designed when LLMs were less capable, so they over-engineer around the LLM's limitations (poor instruction following, limited context windows). Modern models don't need as much scaffolding. The frameworks haven't fully caught up to that.