Commit Graph
3 Commits
Author SHA1 Message Date
bchanot f42e28807b feat(repo-sync): one local tree for every repo reachable on your forges
bin/repo-sync ports the Alphalink dotfiles repo/repo-reset zsh functions to
bash + zsh on Linux and macOS, for several forges at once: GitLab, GitHub
(+GHES), Gitea/Forgejo, Bitbucket Cloud, via curl + jq (no per-forge CLI).
Tokens live in ~/.config/repos/forges.conf (0600, parsed line by line, never
tracked), written by `repo-sync add`. Cache ~/.cache/repos/list refreshed
at most once a day (mkdir lock: flock is not on macOS), same namespace/project
on two forges kept once, archived and mirrors skipped. Layout
~/repos/<namespace with / as @>/<project>.

rc files: `repo <project> [namespace]` clones on demand and cd's, with
completion (bash compgen, zsh _describe), background refresh at shell start.
install.sh: jq in the apt and brew lists, chmod repo-sync.

Verified: shellcheck + bash -n, zsh -n; stub-curl harness over the four forges
(pagination, dedup, auth headers, lock, stale cache, path/clone); live GitLab
refresh (139 projects, 3s).
2026-10-07 15:31:03 +02:00
Bastien CHANOT 72648597ee fix(dt): macOS portability (lsof cwd, BSD date start time, bash 3.2 tilde, sed -E help) 2026-10-05 17:28:39 +02:00
Bastien ChanotandClaude Opus 4.7 6d341f2c9f feat(bin): add dt, dtach-router, claude-provider CLI scripts
- dt: dtach session manager for claude-in-dtach sessions
- dtach-router: SSH-login dashboard to resume sessions (sourced from bashrc)
- claude-provider: switch Claude Code between Anthropic and OpenRouter;
  the OpenRouter API key is read from $OPENROUTER_API_KEY at runtime and
  is never stored in the repo

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-27 18:51:04 +02:00