mirror of
https://github.com/tiennm99/ccs.git
synced 2026-10-14 02:15:36 +00:00
feat: clarify account history sync route (#1187)
* feat: clarify account history sync route * fix: clarify shared context command examples * fix: report missing bare profile settings
This commit is contained in:
1 parent
8df43585f4
commit
be9effcce3
13 files changed
+767
-17
No files matched your search
@@ -1,6 +1,6 @@
|
||||
# Dashboard Authentication CLI
|
||||
|
||||
Last Updated: 2026-04-06
|
||||
Last Updated: 2026-05-05
|
||||
|
||||
CLI commands for managing CCS dashboard authentication.
|
||||
|
||||
@@ -27,7 +27,16 @@ Dashboard auth and account context metadata are separate:
|
||||
- `dashboard_auth`: protects dashboard access with username/password
|
||||
- `accounts.<name>.context_mode/context_group`: controls isolated vs shared account context
|
||||
|
||||
Account context is isolation-first:
|
||||
Account context is isolation-first. The recommended two-account route is:
|
||||
|
||||
```bash
|
||||
ccs auth create work
|
||||
ccs auth create personal
|
||||
ccs work
|
||||
ccs personal
|
||||
```
|
||||
|
||||
Only enable history sync when both accounts should share local continuity while tokens stay separate:
|
||||
|
||||
| Mode | Default | Requirement |
|
||||
|------|---------|-------------|
|
||||
@@ -39,6 +48,16 @@ Shared continuity depth:
|
||||
- `standard` (default): shares project workspace context only
|
||||
- `deeper` (advanced opt-in): also syncs `session-env`, `file-history`, `shell-snapshots`, `todos`
|
||||
|
||||
`ccs auth show <profile>` reports credential isolation, settings sync state, history lane, and whether plain `ccs` currently uses the same resume lane.
|
||||
|
||||
Non-bare account profiles share the basic Claude `settings.json` with native Claude:
|
||||
|
||||
```text
|
||||
~/.ccs/instances/<profile>/settings.json -> ~/.ccs/shared/settings.json -> ~/.claude/settings.json
|
||||
```
|
||||
|
||||
This keeps ordinary Claude settings in sync without copying account tokens. Local history is separate: if users want future plain `ccs` and `ccs ck` sessions to resume from the same account lane, run `ccs auth default ck` after backing up the current native lane with `ccs auth backup default`.
|
||||
|
||||
`context_group` normalization and validation:
|
||||
|
||||
- trim + lowercase + collapse internal whitespace to `-`
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Session Sharing Technical Analysis
|
||||
|
||||
Last Updated: 2026-04-04
|
||||
Last Updated: 2026-05-05
|
||||
|
||||
## Summary
|
||||
|
||||
@@ -12,6 +12,38 @@ This is implemented as a context policy per account:
|
||||
- `shared` + `standard` (default): account workspace context is linked to a shared context group
|
||||
- `shared` + `deeper` (advanced opt-in): account also shares continuity artifacts
|
||||
|
||||
## Recommended Two-Account Route
|
||||
|
||||
Use `ccs auth` account profiles when you want two real Claude accounts and want to choose which one runs each session:
|
||||
|
||||
```bash
|
||||
ccs auth create work
|
||||
ccs auth create personal
|
||||
|
||||
ccs work
|
||||
ccs personal
|
||||
```
|
||||
|
||||
This keeps usage and credentials isolated. Each account owns its own Claude config directory, login state, and `.anthropic` credentials.
|
||||
|
||||
Basic Claude settings are shared for non-bare account profiles:
|
||||
|
||||
```text
|
||||
~/.ccs/instances/<account>/settings.json
|
||||
-> ~/.ccs/shared/settings.json
|
||||
-> ~/.claude/settings.json
|
||||
```
|
||||
|
||||
This is for ordinary Claude Code settings, hooks, commands, skills, agents, and plugins. It is not token sharing. `ccs auth show <account>` reports the current `Settings`, `History`, and `Plain ccs` lanes so users can see whether settings and resume history are aligned.
|
||||
|
||||
Only opt in to shared history when both accounts should see the same local continuity:
|
||||
|
||||
```bash
|
||||
ccs auth create work2 --share-context --context-group daily --deeper-continuity
|
||||
```
|
||||
|
||||
For existing accounts, use Dashboard -> Accounts -> Sync on both accounts, set both to `shared`, and use the same `History Sync Group`. Use `deeper` only when users expect stronger local handoff beyond project context.
|
||||
|
||||
## Why This Is Safe Enough
|
||||
|
||||
CCS only shares workspace context paths (project/session context files). It does **not** merge or copy authentication credentials between accounts.
|
||||
@@ -93,14 +125,24 @@ continuity:
|
||||
default: work
|
||||
```
|
||||
|
||||
Example with an existing `ck` account:
|
||||
|
||||
```bash
|
||||
ccs auth show ck
|
||||
ccs auth backup default
|
||||
ccs auth default ck
|
||||
```
|
||||
|
||||
`ccs auth default ck` makes future plain `ccs` sessions use the `ck` account lane, so future `ccs` and `ccs ck` resume from the same local inventory. It does not automatically import old native `~/.claude/projects` history into `ck`; keep using `ccs -r` for the old native lane until you intentionally migrate that local history.
|
||||
|
||||
## User Workflows
|
||||
|
||||
### New account with shared context
|
||||
|
||||
```bash
|
||||
ccs auth create work2 --share-context
|
||||
ccs auth create backup --context-group sprint-a
|
||||
ccs auth create backup2 --context-group sprint-a --deeper-continuity
|
||||
ccs auth create backup --share-context --context-group sprint-a
|
||||
ccs auth create backup2 --share-context --context-group sprint-a --deeper-continuity
|
||||
```
|
||||
|
||||
### Existing account
|
||||
|
||||
Reference in new issue
Block a user