The AI model wars hit overdrive today — Anthropic dropped Claude Opus 4.7, OpenAI expanded Codex to handle "almost everything," and Qwen's new open-source model is giving both a run for their money. Meanwhile, Cloudflare quietly built an entire agent infrastructure stack overnight. If you're building anything with AI, today's news rewires your roadmap.
38 posts tagged with "developer-tools"
View All TagsBackblaze Stopped Backing Up Your Files and Didn't Tell You — Here's What It Teaches About Cloud Trust
Meta Description: Backblaze quietly stopped backing up OneDrive and Dropbox folders without notifying users. Here's what this means for your backup strategy, why sync ≠ backup, and how to actually protect your data in 2026.
The Backup Provider That Stopped Backing Up
Backblaze built its reputation on a simple promise: unlimited backup, no file restrictions, set-it-and-forget-it. For a decade, that promise held. People paid their subscription, installed the client, and slept easy knowing their files were safe in the cloud.
Then they quietly stopped backing up OneDrive, Dropbox, Google Drive, and other cloud-synced folders — and didn't tell anyone.
No email. No alert. No dashboard warning. Just a bullet point buried in release notes under "Improvements":
The Backup Client now excludes popular cloud storage providers from backup, including both mount points and cache directories. This prevents performance issues, excessive data usage, and unintended uploads from services like OneDrive, Google Drive, Dropbox, Box, iDrive, and others.
This wasn't listed in their official exclusions page either. Users discovered it the hard way — by noticing their OneDrive or Dropbox folders were simply missing from their backup.
One user, R.A. Reese, found 383GB of his OneDrive data was no longer being backed up. He'd been a Backblaze customer for ten years. He'd previously used their drive-restore service successfully. And he only found out because someone else posted about it on Reddit.
The .git Problem
This isn't even the first time. Backblaze also stopped backing up .git folders at some point — again, without clear disclosure. Reese discovered this when he needed to restore a git repository's history after a force-push mistake, only to find Backblaze had silently excluded it.
The pattern is disturbing: a backup provider making unilateral decisions about what counts as "worth backing up" and not clearly communicating those decisions to the people paying for the service.
Why Sync Is Not Backup
A reasonable objection: "Those files are already in OneDrive/Dropbox, so they're already backed up."
No. They're synced, not backed up. The distinction matters enormously.
- Deleted file retention: OneDrive and Dropbox only retain deleted files for 30 days. Backblaze offers one year (or unlimited if you pay per GB).
- Version history: Dropbox only retains version changes for 30 days on standard plans.
- Account risk: If Microsoft or Dropbox suspends your account, your files are gone — and so is your "backup."
- Ransomware protection: Sync services replicate changes (including malicious encryption) immediately. A proper backup maintains independent snapshots.
Your files are less secure in a cloud sync folder than sitting on your desktop with a proper backup solution. By excluding these folders, Backblaze effectively removed protection from some of the most critical data people own.
The Real Lesson: Trust Is the Product
The technical issue here is solvable. You can reconfigure your backup. You can switch providers. You can set up a 3-2-1 strategy.
The deeper problem is about trust and transparency in SaaS.
Backblaze isn't selling storage. They're selling peace of mind. Their entire value proposition is: "You don't have to worry about your data." But by silently changing what they protect, they broke the fundamental contract. Users who checked their exclusions list in 2015 and trusted it would remain consistent were let down.
This pattern plays out across the SaaS ecosystem:
- Features disappear in "updates" that are actually downgrades
- Terms of service change without meaningful notification
- Pricing shifts mid-contract with grandfathering that eventually expires
- Data handling policies evolve in ways users never agreed to
The lesson for anyone relying on cloud services: your backup strategy is only as good as your monitoring of it. Set-it-and-forget-it is a myth. You need to periodically verify that what you think is being backed up is actually being backed up.
What This Means for Founders and Devs
If you're running a startup or managing infrastructure, this story has three direct implications:
- Verify your backups. Don't just configure them — test restores regularly. Set calendar reminders to check what's actually being captured.
- Diversify your backup strategy. The 3-2-1 rule exists for a reason: 3 copies, 2 different media types, 1 off-site. No single provider should be your only safety net.
- Read your providers' release notes. It's tedious, but this is exactly how changes like this slip through. Or better yet, set up automated checks that alert you when backup sizes change significantly.
Building a Bulletproof Backup Strategy in 2026
So what should you actually do? Here's a practical framework:
The 3-2-1-1-1 Strategy
An evolution of the classic 3-2-1 rule:
- 3 copies of your data
- 2 different media types (local disk + cloud, for example)
- 1 off-site copy (different geographic location)
- 1 immutable copy (snapshot that can't be deleted or modified, even by you)
- 1 air-gapped copy (completely disconnected from the network)
Practical Setup for Developers
- Local: Time Machine (macOS) or File History (Windows) to an external drive
- Cloud backup: A provider like Backblaze, Arq, or restic to S3/B2 — but verify exclusions quarterly
- Immutable: AWS S3 Glacier Deep Archive or similar with object lock
- Repository data: Push to multiple git remotes (GitHub + GitLab, or GitHub + self-hosted)
- Config files: Dotfiles repo, synced to a private git repository
- Verification: Monthly restore test — pick a random file and actually recover it
Tools Worth Considering
- restic: Open-source, deduplicated, encrypted backups to multiple backends (S3, B2, SFTP, local)
- Arq: Mac/Windows client that backs up to your own cloud storage (S3, B2, etc.)
- Borg: Deduplicating backup tool with compression and encryption
- Rclone: Syncs to 40+ cloud storage providers, acts as a Swiss Army knife for cloud data
The key insight: use tools where you control the configuration and the destination. If a provider can silently change what they back up, you've given them too much control.
FAQ
Q: Can I re-enable OneDrive/Dropbox backup in Backblaze? A: As of version 9.2.2, Backblaze automatically excludes these folders. There's no toggle in the preferences to override this. Users have reported workarounds involving changing the backup selection manually, but this may be overridden by future updates. Check Backblaze's current documentation for the latest status.
Q: What's the difference between cloud sync and cloud backup? A: Cloud sync (OneDrive, Dropbox) mirrors your current file state across devices — if you delete a file locally, it's deleted from the cloud too. Cloud backup maintains independent snapshots with version history and longer retention, protecting against accidental deletion, ransomware, and device failure.
Q: How often should I test my backup restores? A: At minimum, quarterly. Ideally monthly. A backup you've never restored from is a backup you can't trust. Set a calendar reminder, pick a random file, and verify the restore works end-to-end.
Q: Is Backblaze still worth using? A: It depends on your needs. Backblaze remains affordable and easy to use, but this incident highlights the risk of trusting any single provider implicitly. If you use Backblaze, supplement it with additional backups you control, and verify what's actually being captured regularly.
About the Author
Arkin is a startup founder and developer building Orbits Studio. He writes about tech, developer tools, and lessons from building in public. Find him at arkinjulijanto.github.io.
Claude Code Routines: How to Automate Repetitive Development Work
Meta Description: Claude Code Routines let you automate repetitive development tasks with scheduled jobs, API triggers, and GitHub webhooks. Here's how to build autonomous coding workflows that run 24/7.
Beyond Chat: When Your AI Agent Needs to Run on Autopilot
Chat-based AI coding has transformed how developers work. But there's a limit to what you can do through conversational prompts alone. Sometimes you need work to happen while you're asleep — or while you're focused on something else entirely.
That's what Claude Code Routines are for: pre-configured Claude Code sessions that run automatically, triggered by schedules, API calls, or GitHub events. They execute on Anthropic-managed cloud infrastructure, so they keep working when your laptop is closed.
The release of Routines signals a broader shift in AI-assisted development: moving from interactive assistance to agentic automation. Instead of asking Claude to do something, you configure Claude to do it repeatedly, on its own schedule, without human intervention.
What Are Claude Code Routines?
A Routine is a saved Claude Code configuration that includes:
- A prompt defining the task
- One or more GitHub repositories to work in
- A set of MCP connectors for external services
- One or more triggers that start the routine
When a trigger fires, Claude spins up a new cloud session, executes the prompt against the specified repositories, and creates a session record you can review later. It's like saving a perfect coding prompt and having Claude run it for you whenever you need.
Three Trigger Types
Scheduled: Run on a recurring cadence — hourly, daily, weekdays, weekly, or custom cron intervals. Perfect for periodic maintenance tasks.
API: Trigger on demand with an HTTP POST to a dedicated endpoint. Use this to wire Claude Code into alerting systems, deploy pipelines, or internal tools.
GitHub: React to repository events like pull requests, pushes, or releases. Enables automated code reviews, PR triage, or synchronized library updates.
Key Capabilities
- Runs autonomously with no approval prompts
- Can execute shell commands and use skills committed to repositories
- Connects to external services via MCP (Slack, Linear, Google Drive, etc.)
- Creates
claude/-prefixed branches for its changes - Each run creates a session you can review or continue manually
What Can You Automate with Routines?
The use cases are still emerging, but the documentation highlights several compelling patterns:
Backlog Maintenance
A schedule trigger runs every weeknight, reading issues opened since the last run, applying labels based on the area of code, assigning owners, and posting a summary to Slack. Your team starts the day with a groomed queue instead of a messy backlog.
Alert Triage
Your monitoring tool calls the routine's API endpoint when an error threshold is crossed. The routine pulls the stack trace, correlates it with recent commits, and opens a draft PR with a proposed fix. On-call reviews the PR instead of starting from a blank terminal.
Bespoke Code Review
A GitHub trigger runs on pull_request.opened. The routine applies your team's own review checklist, leaves inline comments for security, performance, and style issues, and adds a summary comment so human reviewers can focus on design instead of mechanical checks.
Deploy Verification
Your CD pipeline calls the routine's API endpoint after each production deploy. The routine runs smoke checks, scans error logs for regressions, and posts a go/no-go to your release channel before the deploy window closes.
Documentation Drift Detection
A schedule trigger runs weekly, scanning merged PRs since the last run, flagging documentation that references changed APIs, and opening update PRs against the docs repository.
Cross-Language Library Ports
A GitHub trigger runs on merged PRs in one SDK repository, ports the change to a parallel SDK in another language, and opens a matching PR — keeping multiple language implementations in sync without human re-implementation.
These patterns have something in common: they're unattended, repeatable, and tied to a clear outcome. That's the sweet spot for Routines.
How to Create a Routine
From the Web Interface
- Visit
claude.ai/code/routinesand click New routine - Name the routine and write the prompt — this is the most important part. The routine runs autonomously, so the prompt must be self-contained and explicit about what to do and what success looks like
- Select one or more GitHub repositories. Claude clones them from the default branch and creates
claude/-prefixed branches for changes - Pick a cloud environment that controls network access, environment variables, and setup scripts
- Configure triggers — you can combine schedule, API, and GitHub triggers on a single routine
- Review connectors — remove any MCP connectors the routine doesn't need
- Click Create. The routine runs the next time a trigger matches
From the CLI
Run /schedule in any session to create a scheduled routine conversationally. You can also pass a description directly: /schedule daily PR review at 9am.
The CLI creates scheduled routines only. To add API or GitHub triggers, edit the routine on the web. The CLI also supports managing existing routines with /schedule list, /schedule update, and /schedule run.
Key Configuration Details
- Prompts must be self-contained: The routine runs without you, so the prompt needs to explain everything — what to look for, how to decide, what to output
- Scoping matters: What a routine can reach is determined by the repositories you select, environment variables, and connectors. Scope each to what the routine actually needs
- Branch behavior: Claude creates
claude/-prefixed branches by default. Enable "Allow unrestricted branch pushes" if the routine needs to push to other branches - Identity: Anything a routine does through your connected GitHub or connectors appears as you — commits carry your GitHub user, Slack messages use your linked account
Trigger Types in Depth
Schedule Triggers
Preset frequencies: hourly, daily, weekdays, weekly. Times are entered in your local timezone and converted automatically.
For custom intervals (every two hours, first of each month), pick the closest preset in the web form, then use /schedule update in the CLI to set a specific cron expression. The minimum interval is one hour.
Runs may start a few minutes after the scheduled time due to stagger, but the offset is consistent for each routine.
API Triggers
Each routine gets a dedicated HTTP endpoint. POSTing with a bearer token starts a new session and returns a session URL you can open to watch the run in real time.
The request body accepts an optional text field for run-specific context (alert body, failing log, etc.). This is passed to the routine alongside its saved prompt as freeform text.
curl -X POST https://api.anthropic.com/v1/claude_code/routines/trig_XXXX/fire \
-H "Authorization: Bearer sk-ant-oat01-xxxxx" \
-H "anthropic-beta: experimental-cc-routine-2026-04-01" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{"text": "Sentry alert SEN-4521 fired in prod. Stack trace attached."}'
Each routine has its own token, scoped to triggering that routine only. Tokens are shown once during generation — store them securely in your alerting tool's secret store.
Note: The API ships under an experimental beta header. Breaking changes will ship behind new dated headers, with the two most recent versions supported for migration time.
GitHub Triggers
A GitHub trigger starts a new session automatically when a matching event occurs. Each matching event fires its own session.
You'll need to install the Claude GitHub App on the repository you want to subscribe to. The trigger setup prompts you to install it if needed.
Important: During research preview, GitHub webhook events are subject to per-routine and per-account hourly caps. Events beyond the limit are dropped until the window resets.
Security and Scoping Considerations
Routines run autonomously with no approval prompts. This means you need to think carefully about:
- Repository access: Only select repositories the routine actually needs
- Environment variables: Provide only the secrets and keys required for the task
- Network access: Configure the appropriate level of internet access
- Connectors: Include only the MCP connectors the routine uses
Anything a routine does appears as you — commits carry your GitHub user, connector actions use your linked accounts. Treat routine prompts like production code: clear instructions, error handling, and verification steps.
The Bigger Picture: From Assistants to Agents
Routines represent an evolution in AI-assisted development. They move us from:
- Interactive → Autonomous: Claude does work while you're away
- One-off → Repeatable: Configure once, run forever
- Task-based → Workflow-based: Entire processes, not just individual actions
This is the direction the industry is heading. Tools like Plain (a Python framework built for agents) and the rise of MCP connectors all point toward a future where AI agents are first-class members of development teams — not just assistants in the IDE, but autonomous workers in the CI/CD pipeline.
The challenge shifts from "how do I get Claude to help me with this?" to "how do I design reliable, trustworthy autonomous workflows?" Prompts become code. Testing becomes crucial. Monitoring and observability matter.
Routines are early days — the feature is in research preview with limits that may change. But they're a clear signal of where AI-assisted development is going.
FAQ
Q: Do Claude Code Routines require a paid plan? A: Yes, Routines are available on Pro, Max, Team, and Enterprise plans with Claude Code on the web enabled. They're not available on free plans.
Q: Can I share routines with my team? A: During research preview, routines belong to your individual claude.ai account. They're not shared with teammates. Each team member would need to create their own routine, or you'd need to coordinate using shared prompts and configurations.
Q: What happens if a routine fails? A: Each routine run creates a session you can review. If a routine fails or produces unexpected results, you can open the session URL to see what happened, review changes, and continue the conversation manually. You should also add error handling and verification steps to your routine prompts.
Q: Are there limits on how often routines can run? A: Yes, during research preview there are per-routine and per-account hourly limits. The specific limits depend on your plan and are visible at claude.ai/code/routines. Events beyond the limit are dropped until the window resets.
Q: Can routines run concurrently? A: Yes, each trigger event starts its own independent session. A single routine can have multiple sessions running simultaneously if multiple triggers fire in quick succession.
Tech Roundup — AI Coding Tools Explode While Supply Chain Attacks Get Smarter
Someone bought 30 WordPress plugins, sat on a backdoor for 8 months, then weaponized it through an Ethereum smart contract. Meanwhile, AI coding tools are getting persistent memory, agent orchestration platforms are blowing up on GitHub, and Cloudflare is rebuilding its entire CLI to be agent-first. Today's tech news roundup covers the intersection where developer tooling meets security — and why founders should be paying attention to both.
Tech Roundup — AI Agents Get Persistent, Anthropic Gets Caught, and $20 Buys You $10K MRR
The AI agent wave isn't coming — it's already here, and it's bringing friends. This week's tech news roundup covers the quietest cost hike you've never heard of, two open-source agent platforms that could reshape how dev teams operate, a bootstrapper's $20/month playbook that embarrassed a VC, and a design essay that hit 300+ points on Hacker News. If you're building products or managing teams in 2026, these stories are your weekend homework.
Tech Roundup — AI Agents Eat Dev Tools, Small Models Punch Up, and Korea Goes Universal
AI agents aren't just trending on GitHub — they're absorbing entire companies. This week's tech news roundup covers OpenAI's quiet acquisition of a CI/CD pioneer, evidence that tiny models can go toe-to-toe with frontier AI in cybersecurity, and South Korea making mobile data a basic right. If you're building developer tools or running a startup that touches AI infrastructure, these stories are your Friday reading.
5 Git Commands That Reveal Everything About a Codebase (Before You Read a Single Line)
You just joined a new team. Someone hands you a repo URL and says, "Get familiar with the codebase." What do you do?
Most developers start reading files from the top. They open src/, scroll through directories, and try to build a mental map folder by folder. That approach works—eventually—but it's slow, directionless, and leaves you guessing about the stuff that actually matters: where the problems live, who knows what, and whether the project is healthy or held together with duct tape.
Git has already been recording everything. Every bug fix, every refactor, every 3 AM hotfix—it's all sitting in the commit history, waiting to be read. You just need to know which questions to ask.
These five git commands take under two minutes to run and will tell you more about a codebase than a full day of browsing files.
Tech Roundup — AI Democratization Heats Up, Developer Tools Level Up (April 8, 2026)
Training a 100-billion parameter model on a single GPU. Running LLMs on a smartwatch. Building code knowledge graphs that make AI agents actually reliable. Today's tech news roundup isn't about incremental updates — it's about who gets to play in AI, and the answer is increasingly everyone. Here's what caught our eye today and why it matters for builders.
