javi-dots owns the portable workstation replication profile because it is the single bootstrap entry point for a new machine.
npx javi-dots replication export
# or choose a path
npx javi-dots replication export --output ./javi-workstation-profile.jsonThe default output is:
~/.javidots/replication-profile.json
To preview without writing:
npx javi-dots replication export --dry-runTo print the profile JSON:
npx javi-dots replication showThe profile is allowlist-based and contains only portable setup intent:
- selected AI CLIs (
claude,opencode,gemini,qwen,codex,copilot) - selected preset (
minimal,full, orcustom) - Javi-managed features (
skills,configs,hooks,plugins,orchestrators) - mandatory tools (
engram,gentle-ai) and selected optional tools (ghagga,kiteguard,rtk) - default MCP server names such as
engram - an explicit list of excluded local state categories
The replication profile never copies live home-directory trees wholesale. These categories are local-only:
.env*- credentials, secrets, auth files, tokens, OAuth files
- session histories and JSONL logs
- caches and generated images
- runtime SQLite databases and WAL/SHM files
- shell snapshots and paste caches
- debug logs
A future apply flow should read this profile and call the normal setup path, e.g.:
npx javi-dots setup --cli claude,opencode,codex --ghagga --kiteguardThen javi-ai installs the actual managed assets from its published package. The profile records choices; it does not embed secrets or runtime files.