Commit 529e64d
committed
feat: add config bind command for Agent credential workspace isolation
Add `lark-cli config bind --source openclaw|hermes` to sync AI Agent
Feishu credentials into isolated lark-cli workspace subtrees.
- Workspace routing: core.SetCurrentWorkspace / GetRuntimeDir with
atomic.Value for concurrency safety; existing GetConfigDir delegates
transparently (zero behavior change for local workspace)
- OpenClaw SecretRef resolution: 4 forms (plain, ${VAR} template,
file with JSON Pointer, exec with JSON protocol) aligned with
OpenClaw src/secrets/resolve.ts including full security audit
(absolute path, symlink, owner uid, permission bits, trustedDirs)
- Hermes .env parsing: reads ~/.hermes/.env with HERMES_HOME override
- TUI + flag dual mode: language → source → account → conflict prompt
→ security disclaimer, matching config init interactive style
- Keychain integration via ForStorage; --force cleanup of old entries
- config show / doctor output: workspace field added
- 75+ unit tests covering success paths, error branches, exec provider
shell scripts, audit security checks, types marshaling1 parent c442fa2 commit 529e64d
29 files changed
Lines changed: 5154 additions & 25 deletions
File tree
- cmd
- config
- doctor
- internal
- cmdutil
- core
- keychain
- openclaw
- tests/cli_e2e/config
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
5 | 11 | | |
6 | 12 | | |
7 | 13 | | |
| |||
0 commit comments