openmeld 0.3.76 → 0.3.78

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 (26) hide show
  1. package/README.md +7 -0
  2. package/dist/{add-me-membership-C_dCTz9h.js → add-me-membership-BP7P_X-r.js} +2 -2
  3. package/dist/{add-me-membership-C_dCTz9h.js.map → add-me-membership-BP7P_X-r.js.map} +1 -1
  4. package/dist/{api-client-foundation-CO_4tB8y.js → api-client-foundation-jjwUa25Q.js} +4 -4
  5. package/dist/{api-client-foundation-CO_4tB8y.js.map → api-client-foundation-jjwUa25Q.js.map} +1 -1
  6. package/dist/{auth-session-BZgsNHJA.js → auth-session-BOKcW_84.js} +3 -3
  7. package/dist/{auth-session-BZgsNHJA.js.map → auth-session-BOKcW_84.js.map} +1 -1
  8. package/dist/{base-url-KfrIdedc.js → base-url-Cv9x5Es9.js} +11 -3
  9. package/dist/base-url-Cv9x5Es9.js.map +1 -0
  10. package/dist/{command-Bn3Sm1p8.js → command-Pj7c1mH5.js} +21164 -18939
  11. package/dist/{command-Bn3Sm1p8.js.map → command-Pj7c1mH5.js.map} +1 -1
  12. package/dist/{daemon-runtime-lease-7AQYjp3h.js → daemon-runtime-lease-CKQef0lp.js} +2 -2
  13. package/dist/{daemon-runtime-lease-7AQYjp3h.js.map → daemon-runtime-lease-CKQef0lp.js.map} +1 -1
  14. package/dist/{dist-nJqZxjtc.js → dist-DtEdipqO.js} +4690 -3965
  15. package/dist/dist-DtEdipqO.js.map +1 -0
  16. package/dist/openmeld-dev.js +1 -1
  17. package/dist/openmeld.js +965 -65
  18. package/dist/openmeld.js.map +1 -1
  19. package/dist/{runtime-transport-Bs6YfTqj.js → runtime-transport-BLEvh9zX.js} +53 -4
  20. package/dist/runtime-transport-BLEvh9zX.js.map +1 -0
  21. package/package.json +5 -3
  22. package/skills/openmeld-cli/SKILL.md +150 -2
  23. package/skills/openmeld-cli/references/commands.md +72 -0
  24. package/dist/base-url-KfrIdedc.js.map +0 -1
  25. package/dist/dist-nJqZxjtc.js.map +0 -1
  26. package/dist/runtime-transport-Bs6YfTqj.js.map +0 -1
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "$schema": "https://www.schemastore.org/package.json",
3
3
  "name": "openmeld",
4
- "version": "0.3.76",
5
- "openMeldReleaseDate": "2026-08-19",
4
+ "version": "0.3.78",
5
+ "openMeldReleaseDate": "2026-08-21",
6
6
  "description": "OpenMeld CLI - https://openmeld.ai",
7
7
  "license": "MIT",
8
8
  "type": "module",
@@ -14,7 +14,7 @@
14
14
  "access": "public"
15
15
  },
16
16
  "engines": {
17
- "node": ">=20"
17
+ "node": "20.x || >=22 <26"
18
18
  },
19
19
  "files": [
20
20
  "README.md",
@@ -44,6 +44,7 @@
44
44
  "@mariozechner/pi-tui": "0.57.1",
45
45
  "@modelcontextprotocol/sdk": "^1.29.0",
46
46
  "@opencode-ai/sdk": "^1.18.7",
47
+ "better-sqlite3": "^12.6.2",
47
48
  "commander": "^14.0.0",
48
49
  "picocolors": "^1.1.1",
49
50
  "string-width": "^8.1.0",
@@ -72,6 +73,7 @@
72
73
  "@openmeld/space-mesh": "workspace:*",
73
74
  "@openmeld/start": "workspace:*",
74
75
  "@openmeld/utils": "workspace:*",
76
+ "@types/better-sqlite3": "^7.6.13",
75
77
  "@types/node": "^24.3.0",
76
78
  "@types/ws": "^8.18.1",
77
79
  "oxc-resolver": "^11.0.0",
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: openmeld-cli
3
- description: Official public OpenMeld Skill for agents using the `openmeld` CLI to consult the Center Agent, set up OpenMeld, connect local agents, work in Organizations and Spaces, observe or stop Wakes, trace delivery, and repair local state.
3
+ description: Official public OpenMeld Skill for agents using the `openmeld` CLI to consult the Center Agent, set up OpenMeld, connect local agents, create or request Agent Profiles, work in Organizations and Spaces, observe or stop Wakes, trace delivery, and repair local state.
4
4
  ---
5
5
 
6
6
  # OpenMeld CLI Guide
@@ -225,6 +225,36 @@ openmeld service status --view agent
225
225
  openmeld profiles list --view agent
226
226
  ```
227
227
 
228
+ ## Local Agent Session Inventory
229
+
230
+ When the user asks which Local Agent Sessions exist in the active Organization,
231
+ or needs a stable Session reference for Agent Profile creation, read the Core-owned
232
+ Session Inventory instead of scanning provider files yourself:
233
+
234
+ ```bash
235
+ openmeld activity sessions --view agent
236
+ openmeld activity sessions --project <project-slug> --provider codex --view agent
237
+ openmeld activity sessions --native-session <provider-native-session-id> --json
238
+ ```
239
+
240
+ Use `nextCursor` with `--cursor` until it is null when the task requires a
241
+ complete inventory. Every row already contains the authorized Owner, Project,
242
+ Computer, Local Agent, Native Session ID and title, status, freshness, origin,
243
+ `canResume`, `canFork`, and current Agent Profile Binding. Treat those fields as
244
+ facts; do not recalculate them from provider files, process presence, timestamps,
245
+ or Activity events.
246
+
247
+ A visible Native Session ID is a locator, not operation authority. Before any
248
+ resume, fork, Agent Profile creation, Binding change, or Space membership change,
249
+ use the owning OpenMeld command and let it recheck identity, Organization,
250
+ Project, Computer, provider capability, and permission. When `canResume` or
251
+ `canFork` is false, do not simulate that capability. When coverage or status is
252
+ `unknown`, `stale`, `unsupported`, or `error`, report that state directly.
253
+
254
+ Session Inventory is metadata-only. Never read or upload transcripts, prompts,
255
+ responses, reasoning, tool inputs or outputs, file contents, diffs, commands,
256
+ terminal content, credentials, or local absolute paths to supplement it.
257
+
228
258
  ## Organization Skills
229
259
 
230
260
  Organization Skills are optional methods owned by the active OpenMeld
@@ -381,6 +411,69 @@ Create or select an Agent Profile through setup:
381
411
  openmeld start --view agent --kind agent --profile-name "Codex Agent"
382
412
  ```
383
413
 
414
+ ### Create Or Request An Agent Profile
415
+
416
+ `openmeld profiles create` is the one creation entry for your own Agent Profile
417
+ and for requesting a teammate-owned Agent Profile. Read the Organization
418
+ directory for member user IDs, then read the team-safe Computer projection for
419
+ the exact Computer and local-agent controller references available to that owner:
420
+
421
+ ```bash
422
+ openmeld org directory --view agent
423
+ openmeld org computers --view agent
424
+ ```
425
+
426
+ Create or request a new-session Agent Profile with the same configuration:
427
+
428
+ ```bash
429
+ openmeld profiles create "Review Agent" --kind agent --owner self --agent-controller builtin:codex --computer <computer-id> --session new --source local-agent --request-key <stable-key> --view agent
430
+ openmeld profiles create "Review Agent" --kind agent --owner <member-user-id> --agent-controller builtin:codex --computer <computer-id> --session new --source local-agent --request-key <stable-key> --view agent
431
+ ```
432
+
433
+ Use `--source local-agent` when a supported Local Agent is making the request;
434
+ ordinary terminal use defaults to `--source cli`. The server derives the real
435
+ requester and actor from the signed-in OpenMeld identity. Source is attribution,
436
+ not authority. Reuse the same `--request-key` only when retrying the same logical
437
+ request.
438
+
439
+ Resume and Fork use the exact provider-native Session ID:
440
+
441
+ ```bash
442
+ openmeld profiles create "Review Agent" --kind agent --owner <member-user-id> --agent-controller builtin:codex --computer <computer-id> --session resume --native-session <native-session-id> --source local-agent --request-key <stable-key> --view agent
443
+ openmeld profiles create "Review Agent" --kind agent --owner <member-user-id> --agent-controller builtin:codex --computer <computer-id> --session fork --native-session <native-session-id> --source local-agent --request-key <stable-key> --view agent
444
+ ```
445
+
446
+ Pass only a Session exposed by OpenMeld Agent Activity for the selected Project.
447
+ Keep the provider-native ID unchanged. OpenMeld currently fails these requests
448
+ clearly until it can verify that Session; use `--session new` when verification
449
+ is unavailable. Prefer Fork when preserving an active working Session matters;
450
+ prefer Resume when continuing the original Session is intentional. Check the
451
+ selected local agent's `conversationCapabilities` from `openmeld org computers`
452
+ before requesting Fork. Never simulate Fork by summarizing context into a new
453
+ Session.
454
+
455
+ Track and manage requests:
456
+
457
+ ```bash
458
+ openmeld profiles requests list --view agent
459
+ openmeld profiles requests approve <request-id> --view agent
460
+ openmeld profiles requests decline <request-id> --view agent
461
+ openmeld profiles requests cancel <request-id> --view agent
462
+ openmeld profiles requests retry <request-id> --view agent
463
+ ```
464
+
465
+ Set separate approval policies for new and existing Sessions:
466
+
467
+ ```bash
468
+ openmeld profiles requests preferences get --view agent
469
+ openmeld profiles requests preferences set --new-session automatically-allow --existing-session ask-every-time --view agent
470
+ ```
471
+
472
+ Approval policy values are `never-allow`, `ask-every-time`, and
473
+ `automatically-allow`. The target owner controls these settings. Approval does
474
+ not silently grant Space membership; when the request records an intended
475
+ Space, use the normal Space membership flow after the Agent Profile exists.
476
+
384
477
  Select a profile for the current terminal:
385
478
 
386
479
  ```bash
@@ -604,7 +697,7 @@ action. Keep purely local code or file work local. The goal is to finish the
604
697
  user's job with fewer handoffs, not to route every small question through
605
698
  OpenMeld.
606
699
 
607
- ### Organization Directory And Invite Link
700
+ ### Organization Directory, Computers, And Invite Link
608
701
 
609
702
  Read the active Organization directory in Agent View or as one JSON envelope:
610
703
 
@@ -613,6 +706,61 @@ openmeld org directory --view agent
613
706
  openmeld org directory --json
614
707
  ```
615
708
 
709
+ Read the Organization-visible Computer and local-agent readiness projection:
710
+
711
+ ```bash
712
+ openmeld org computers --view agent
713
+ openmeld org computers --json
714
+ ```
715
+
716
+ Join `ownerUserId` to the directory member `user.id`, then use the exact
717
+ `computerId` and `agentControllerRef` when creating a teammate-owned Agent.
718
+ This projection is deliberately team-safe: do not expect private account names,
719
+ local paths, launch commands, or private skills.
720
+
721
+ Use the directory before answering questions such as:
722
+
723
+ - who belongs to the Organization and whether they are an owner, admin, or
724
+ member
725
+ - which Human Profile represents a person
726
+ - which Agent Profiles a member owns and whether one is currently ready for
727
+ work
728
+ - when OpenMeld last accepted real Human activity from a member
729
+
730
+ The response contains active members, Organization roles, user identity,
731
+ Human Profiles, Agent Profiles, and an optional `lastActiveAt`. Agent Profiles
732
+ are returned as Organization-level records; match an Agent Profile's
733
+ `ownerUserId` to the member's `userId` instead of guessing from names.
734
+
735
+ Treat a missing `lastActiveAt` literally: OpenMeld has no authoritative Human
736
+ activity timestamp for that member. Never substitute a Computer heartbeat,
737
+ login/session refresh, or Agent Activity timestamp.
738
+
739
+ The directory is intentionally not a dump of every People drawer field. It
740
+ does not expose Connected Channel management, private Computer paths or file
741
+ access, Profile Report drafts or bodies, credentials, or private local-agent
742
+ state. Use the Center Agent when approved Organization documents, Profile
743
+ Report context, or another Organization-owned capability is needed. Use
744
+ team-safe Computer reads only after resolving the exact member from the
745
+ directory.
746
+
747
+ For example, to find an admin who owns a ready Agent Profile, read the
748
+ directory, filter members by `role`, then join Agent Profiles by `ownerUserId`
749
+ and inspect their returned readiness. Do not infer role, ownership, or
750
+ readiness from display names.
751
+
752
+ Read the same team-safe Organization Computers projection used by OpenMeld Web
753
+ and the Center Agent. Usage Limits are included when providers report them:
754
+
755
+ ```bash
756
+ openmeld org computers --view agent
757
+ openmeld org computers --json
758
+ ```
759
+
760
+ This read never exposes provider credentials, account identity, executable
761
+ paths, setup commands, or Computer controls. Do not scrape the Web UI or query a
762
+ provider separately.
763
+
616
764
  Read or manage the Organization invite link:
617
765
 
618
766
  ```bash
@@ -139,6 +139,55 @@ openmeld org directory --view agent
139
139
  openmeld org directory --json
140
140
  ```
141
141
 
142
+ The directory returns active members, roles, user identity, Human Profiles,
143
+ Organization-level Agent Profiles, and optional authoritative Human
144
+ `lastActiveAt` timestamps. Match Agent Profiles to members with `ownerUserId`.
145
+ A missing `lastActiveAt` means that OpenMeld has no authoritative Human
146
+ activity timestamp; do not replace it with Computer, session, or Agent
147
+ Activity time.
148
+
149
+ This command does not expose Connected Channel management, private Computer
150
+ paths or file access, Profile Report drafts or bodies, credentials, or private
151
+ local-agent state.
152
+
153
+ ### `openmeld activity sessions`
154
+
155
+ List the active Organization's authorized Local Agent Session Inventory. Agent
156
+ View emits the shared Session contract as stable result codes; `--json` emits
157
+ one `activity.sessions` envelope. Continue with the opaque cursor until
158
+ `nextCursor` is null when a complete inventory is required.
159
+
160
+ ```bash
161
+ openmeld activity sessions --view human
162
+ openmeld activity sessions --view agent --limit 100
163
+ openmeld activity sessions --project openmeld --provider codex --view agent
164
+ openmeld activity sessions --status working --origin openmeld --json
165
+ openmeld activity sessions --native-session <provider-native-session-id> --json
166
+ openmeld activity sessions --cursor <opaque-cursor> --view agent
167
+ ```
168
+
169
+ Filters: `--project`, `--member`, `--provider`, `--status`, `--origin`,
170
+ `--native-session`, `--query`, `--limit`, and `--cursor`. A returned Native
171
+ Session ID is a locator, not permission to resume, fork, create a Binding, or
172
+ add an Agent Profile to a Space.
173
+
174
+ ### `openmeld org computers`
175
+
176
+ List the active Organization's team-visible Computers and supported Local
177
+ Agents. Agent View preserves the validated Organization Computers projection;
178
+ `--json` emits one scriptable JSON envelope. When a provider reports Usage
179
+ Limits, the same normalized limits shown in Web and available to the Center
180
+ Agent are included.
181
+
182
+ ```bash
183
+ openmeld org computers --view agent
184
+ openmeld org computers --json
185
+ ```
186
+
187
+ Join `ownerUserId` to `openmeld org directory`, then use the exact `computerId`
188
+ and `agentControllerRef` with `openmeld profiles create`. Private local paths,
189
+ account identities, launch commands, and private skills are not exposed.
190
+
142
191
  ### `openmeld org invite-link`
143
192
 
144
193
  Read, create or reset, and revoke the active Organization invite link. OpenMeld
@@ -519,6 +568,29 @@ openmeld profiles update <profile-id> --name <profile-name>
519
568
  openmeld profiles delete <profile-id> --force
520
569
  ```
521
570
 
571
+ Create your own Agent Profile or request one for a teammate through the same
572
+ entry, then manage requests separately:
573
+
574
+ ```bash
575
+ openmeld profiles create <profile-name> --kind agent --owner self --agent-controller builtin:codex --computer <computer-id> --session new --source local-agent --request-key <stable-key> --view agent
576
+ openmeld profiles create <profile-name> --kind agent --owner <member-user-id> --agent-controller builtin:codex --computer <computer-id> --session new --source local-agent --request-key <stable-key> --view agent
577
+ openmeld profiles create <profile-name> --kind agent --owner <member-user-id> --agent-controller builtin:codex --computer <computer-id> --session resume --native-session <native-session-id> --source local-agent --request-key <stable-key> --view agent
578
+ openmeld profiles create <profile-name> --kind agent --owner <member-user-id> --agent-controller builtin:codex --computer <computer-id> --session fork --native-session <native-session-id> --source local-agent --request-key <stable-key> --view agent
579
+ openmeld profiles requests list --view agent
580
+ openmeld profiles requests approve <request-id> --view agent
581
+ openmeld profiles requests decline <request-id> --view agent
582
+ openmeld profiles requests cancel <request-id> --view agent
583
+ openmeld profiles requests retry <request-id> --view agent
584
+ openmeld profiles requests preferences get --view agent
585
+ openmeld profiles requests preferences set --new-session automatically-allow --existing-session ask-every-time --view agent
586
+ ```
587
+
588
+ Resume and Fork accept the exact provider-native Session ID. They fail clearly
589
+ until OpenMeld Agent Activity can verify the selected Project Session. Approval
590
+ policy values are `never-allow`, `ask-every-time`, and `automatically-allow`.
591
+ Read `conversationCapabilities` from `openmeld org computers` before choosing
592
+ Fork; never substitute a generated summary for a controller-native Fork.
593
+
522
594
  ### `openmeld agents`
523
595
 
524
596
  Find, enable, repair, and review local agents on this computer. Use `openmeld setup`