Run two Claude Code accounts simultaneously on macOS without re-authenticating by using separate configuration directories.
- Create Separate Config Directories
mkdir ~/.claude-account1 mkdir ~/.claude-account2
| #!/bin/bash | |
| # https://gist.github.com/Vaviloff/9ee6b0c68393a98a0e9c715ba4063fe3 | |
| # Development box setup script | |
| # Run as root - sets up system for a user $user | |
| user="${1:-vaviloff}" | |
| set -e # Exit on any error |
This is a living document. Everything in this document is made in good faith of being accurate, but like I just said; we don't yet know everything about what's going on.
Update: I've disabled comments as of 2025-01-26 to avoid everyone having notifications for something a year on if someone wants to suggest a correction. Folks are free to email to suggest corrections still, of course.
| #! /usr/bin/env node | |
| import fs from 'fs'; | |
| import { promisify } from 'util'; | |
| import path from 'path'; | |
| import { spawn } from 'child_process'; | |
| const fsExists = promisify(fs.exists); | |
| if (!process.env.GITHUB_TOKEN) throw new Error("process.env.GITHUB_TOKEN is required"); | |
| if (!process.env.GITHUB_USER) throw new Error("process.env.GITHUB_USER is required"); |
In this guide we will only focus on using the prebuilt images from Docker Hub.
Prerequisites: You have Git, Docker, Docker compose and Nginx pre-installed.
Clone Mastodon's repository.
| # Used on Ubuntu 18.04 and 20.04 | |
| # Find instructions for other OSes here: https://certbot.eff.org/instructions | |
| # Install Certbot via Snaps | |
| sudo snap install core; sudo snap refresh core | |
| sudo snap install --classic certbot | |
| sudo ln -s /snap/bin/certbot /usr/bin/certbot | |
| # Install DNS CloudFlare plugin | |
| sudo snap set certbot trust-plugin-with-root=ok |
This post was adapted from an earlier Twitter thread.
It's incredible how many collective developer hours have been wasted on pushing through the turd that is ES Modules (often mistakenly called "ES6 Modules"). Causing a big ecosystem divide and massive tooling support issues, for... well, no reason, really. There are no actual advantages to it. At all.
It looks shiny and new and some libraries use it in their documentation without any explanation, so people assume that it's the new thing that must be used. And then I end up having to explain to them why, unlike CommonJS, it doesn't actually work everywhere yet, and may never do so. For example, you can't import ESM modules from a CommonJS file! (Update: I've released a module that works around this issue.)
And then there's Rollup, which apparently requires ESM to be u