clawdi 0.6.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +42 -9
  2. package/dist/index.js +228 -202
  3. package/package.json +2 -1
package/README.md CHANGED
@@ -46,6 +46,7 @@ That gets you:
46
46
  - Agent auto-detection for Claude Code, Codex, Hermes, and OpenClaw
47
47
  - MCP registration so your agent can call Clawdi tools
48
48
  - The bundled `clawdi` skill installed into each detected agent
49
+ - Background sync daemons installed and started for every registered agent
49
50
  - A health check that verifies auth, agent paths, vault access, and MCP config
50
51
 
51
52
  By default the CLI talks to hosted Clawdi Cloud. Want to run your own backend? See [Own the Stack](#own-the-stack).
@@ -74,7 +75,7 @@ Clawdi is the shared layer underneath:
74
75
  - **Portable skills** — Upload or install agent instructions once, then sync them into every registered agent.
75
76
  - **Project sharing** — Share read-only Project access, accept it from the CLI inbox, and explicitly attach accepted Projects to Agents when they should be used at runtime.
76
77
  - **Session sync** — Push local session history to the dashboard for review and recall.
77
- - **Vault secrets** — Store secrets server-side and inject them only when running a command.
78
+ - **Vault secrets** — Store secrets server-side, commit only `clawdi://` references, and resolve them at runtime.
78
79
  - **App connections** — Hook agents into Notion, Gmail, Drive, Calendar, Linear, GitHub, and more from the dashboard. Tools show up inside every connected agent automatically over MCP.
79
80
  - **MCP tools** — Memory, vault, and connector tools served through the Model Context Protocol so any MCP-aware agent can use them.
80
81
 
@@ -86,13 +87,39 @@ remember that this repo uses Bun for TypeScript and PDM for backend scripts
86
87
 
87
88
  Later, in a different agent or a fresh session, ask "what package manager should I use here?" — it can call Clawdi memory search and answer from your actual context instead of guessing.
88
89
 
89
- Run a command with vault secrets without putting them on disk:
90
+ Run a fullstack dev command with vault references without putting plaintext secrets on disk:
90
91
 
91
92
  ```bash
92
93
  clawdi vault set OPENAI_API_KEY
93
- clawdi run -- python scripts/ingest.py
94
+ echo "OPENAI_API_KEY=clawdi://project/<project-id>/vault/default/field/OPENAI_API_KEY" > .env.clawdi
95
+ clawdi run --dry-run --env-file .env.clawdi -- npm run dev
96
+ clawdi run --env-file .env.clawdi -- npm run dev
97
+ clawdi read clawdi://project/<project-id>/vault/default/field/OPENAI_API_KEY
98
+ clawdi inject --dry-run --in .env.clawdi --out .env.local
99
+ clawdi inject --force --in .env.clawdi --out .env.local
94
100
  ```
95
101
 
102
+ `clawdi vault set`, `clawdi vault import`, and `clawdi vault list` print exact references that include the Project ID. Project-relative references such as `clawdi://default/OPENAI_API_KEY` still work for portable templates, but exact references are the default copy/read UX.
103
+
104
+ Agents should prefer `clawdi run --env-file .env.clawdi -- <command>` when they can launch the tool themselves. Use `clawdi inject` only for tools that must read a physical `.env.local`; generated files are written owner-only and should stay gitignored.
105
+
106
+ Use `--dry-run` on `clawdi read`, `clawdi inject`, `clawdi run`, and `clawdi vault resolve` to verify provenance without requesting plaintext values. `clawdi doctor` checks vault metadata only; it does not resolve stored secrets.
107
+
108
+ Sync a local agent CLI credential profile to another machine:
109
+
110
+ ```bash
111
+ clawdi agent credentials import codex
112
+ clawdi agent credentials import claude-code
113
+ clawdi agent credentials import gh
114
+ clawdi agent credentials materialize codex
115
+ clawdi agent credentials materialize claude-code
116
+ clawdi agent credentials materialize gh
117
+ ```
118
+
119
+ Credential profile sync is separate from `clawdi run`: it stores and restores a supported tool's local auth file, while `run` injects explicit `clawdi://` references into one child process. Profiles default to your stable Personal Project so `import` on one machine and `materialize` on another resolve the same namespace. They are personal backup/restore artifacts: shared Project viewers and env-bound Agent keys cannot materialize them. macOS Keychain imports are guarded behind `--source keychain` and require explicit `--keychain-service` plus `--keychain-account`; Clawdi does not guess or silently scrape credential-store items, and Keychain reads cannot use `--yes`.
120
+
121
+ Current vault storage is server-managed encryption. Clawdi avoids plaintext secrets in repo files and local templates, but the backend can decrypt stored vault values and credential profiles today. Do not treat this release as zero-knowledge.
122
+
96
123
  Install a shared skill into every registered agent at once:
97
124
 
98
125
  ```bash
@@ -216,8 +243,9 @@ Each agent has a dedicated adapter in [`packages/cli/src/adapters`](https://gith
216
243
  | --- | --- |
217
244
  | `clawdi auth login` / `logout` | Authenticate this machine |
218
245
  | `clawdi status [--json]` | Show auth and sync state |
219
- | `clawdi setup [--agent <type>]` | Register local agents, install MCP, install the bundled skill |
246
+ | `clawdi setup [--agent <type>] [--no-daemon]` | Register local agents, install MCP, install the bundled skill, and install/start daemons by default |
220
247
  | `clawdi teardown [--agent <type>]` | Remove Clawdi's local agent wiring |
248
+ | `clawdi daemon run/install/status/logs/doctor/restart/uninstall` | Run and manage the background sync daemon (`serve` remains a legacy alias) |
221
249
  | `clawdi push` | Upload sessions and skills |
222
250
  | `clawdi pull` | Download cloud skills into registered agents |
223
251
  | `clawdi memory list/search/add/rm` | Manage cross-agent long-term memory |
@@ -225,11 +253,16 @@ Each agent has a dedicated adapter in [`packages/cli/src/adapters`](https://gith
225
253
  | `clawdi project create/list/show/share/share-links/invite/invites/members/leave/unshare` | Manage Projects and read-only sharing |
226
254
  | `clawdi inbox [accept/decline/forget]` | Accept invitations and share links |
227
255
  | `clawdi agent projects list/attach/detach/move` | View the fixed Agent Project and manage attached Projects |
228
- | `clawdi project folder link/status/unlink` | Link a local folder to a Project for `clawdi run` vault selection |
229
- | `clawdi vault set/list/import` | Manage encrypted secrets |
230
- | `clawdi run -- <cmd>` | Run a command with vault secrets injected |
256
+ | `clawdi agent credentials import/materialize` | Sync local CLI credential profiles for Codex, Claude Code, and GitHub CLI; explicit Keychain import requires service/account options |
257
+ | `clawdi project folder link/status/unlink` | Link a local folder to a Project for vault reference selection |
258
+ | `clawdi vault set/list/import` | Manage encrypted secrets and copy exact references |
259
+ | `clawdi read <clawdi://...>` | Explicitly print one vault reference value |
260
+ | `clawdi inject --in <file> --out <file>` | Render `clawdi://` references into templates |
261
+ | `clawdi run --env-file <file> -- <cmd>` | Run a command with explicit vault references resolved |
231
262
  | `clawdi doctor` | Diagnose auth, agent paths, vault, and MCP config |
232
- | `clawdi update` | Check for a newer CLI version |
263
+ | `clawdi update` | Install the latest CLI version (`--check` only reports) |
264
+
265
+ Auto-update is enabled by default for all newer releases, including majors. Human CLI invocations update the global CLI in the background; installed daemons check on their own cadence, install silently, then let launchd/systemd restart them onto the new code. Disable both with `CLAWDI_NO_AUTO_UPDATE=1` or `clawdi config set autoUpdate false`.
233
266
  | `clawdi mcp` | Start the MCP stdio server used by agents |
234
267
 
235
268
  Every command supports `--help`.
@@ -297,7 +330,7 @@ Common issues:
297
330
  - **No supported agent detected** - Install a supported agent or pass `--agent claude_code`, `--agent codex`, `--agent hermes`, or `--agent openclaw`.
298
331
  - **Memory search is empty** - Add a memory first with `clawdi memory add "..."`, then verify with `clawdi memory search "..."`.
299
332
  - **Local backend cannot start because `vector` is missing** - Install `pgvector` for your PostgreSQL 16 instance, or use the included Docker Compose database.
300
- - **Agent MCP tools look stale** - Run `clawdi setup --agent <type>` again and restart the agent.
333
+ - **Agent MCP tools look stale** - Run `clawdi setup --agent <type>` again, then `clawdi daemon restart --all`.
301
334
 
302
335
  ## License
303
336