Anonymous repos
Create an ephemeral repo with no account from the SDK or CLI.
Anonymous repos are available through the SDK and CLI. The SDK creates an ephemeral repo, then writes commits through the same public API contract as signed-in repos.
import { repome } from '@repome/sdk'
const git = await repome.ephemeral({ ttl: '24h' })
await git.add('README.md', '# hello')
await git.commit('initial')
console.log(git.remote)
console.log(git.expiresAt)Prefer the CLI? The repome anon subcommand
tree covers repo lifecycle and cloning — repome anon create mints an
ephemeral repo and persists the anon identifier to
~/.config/repome/anon.json (mode 0600), and repome anon clone
materializes it locally with a credential helper that keeps git fetch
working without auth. Anonymous git writes from memory are SDK/API-only.
repome anon create --ttl 6h
repome anon clone <name>Current scope
| Capability | Status |
|---|---|
| SDK anonymous repo create | Available |
| SDK commit API | Available |
| Anonymous repo get / list / delete | Available |
CLI repome anon subcommand tree | Available |
CLI repome anon clone (read-only) | Available |
Plain git push to /push | Not available yet |
| Claiming an anonymous repo | Not available yet |
Anonymous repos expire automatically. The default TTL is 24 hours and the
maximum is 72 hours; pass ttl: '30m', ttl: '6h', etc. on the SDK call,
or --ttl 30m on the CLI.
The smart HTTP anonymous push flow is a separate transport and is not part of this release.