@frockbot/plugin-shell 0.2.4 → 0.2.5

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@frockbot/plugin-shell",
3
- "version": "0.2.4",
3
+ "version": "0.2.5",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "exports": {
@@ -46,39 +46,39 @@
46
46
  },
47
47
  "dependencies": {
48
48
  "@cordisjs/plugin-webui": "0.8.2",
49
- "@frockbot/agent-runtime": "0.2.4",
50
- "@frockbot/application-foundation": "0.2.4",
51
- "@frockbot/catalog-core": "0.2.4",
52
- "@frockbot/client-core": "0.2.4",
53
- "@frockbot/client-ui": "0.2.4",
54
- "@frockbot/computer-core": "0.2.4",
55
- "@frockbot/computer-host-protocol": "0.2.4",
56
- "@frockbot/configuration-core": "0.2.4",
57
- "@frockbot/connection-core": "0.2.4",
58
- "@frockbot/kernel-agent-loop": "0.2.4",
59
- "@frockbot/kernel-composition": "0.2.4",
60
- "@frockbot/kernel-contracts": "0.2.4",
61
- "@frockbot/kernel-do": "0.2.4",
62
- "@frockbot/machine-protocol": "0.2.4",
63
- "@frockbot/plugin-authoring": "0.2.4",
64
- "@frockbot/plugin-package-catalog": "0.2.4",
65
- "@frockbot/plugin-bot-template": "0.2.4",
66
- "@frockbot/plugin-flock": "0.2.4",
67
- "@frockbot/plugin-image": "0.2.4",
68
- "@frockbot/plugin-machine-messages": "0.2.4",
69
- "@frockbot/plugin-mcp": "0.2.4",
70
- "@frockbot/plugin-memory": "0.2.4",
71
- "@frockbot/plugin-routines": "0.2.4",
72
- "@frockbot/plugin-skills": "0.2.4",
73
- "@frockbot/plugin-subagents": "0.2.4",
74
- "@frockbot/plugin-user-machine": "0.2.4",
75
- "@frockbot/protocol": "0.2.4",
49
+ "@frockbot/agent-runtime": "0.2.5",
50
+ "@frockbot/application-foundation": "0.2.5",
51
+ "@frockbot/catalog-core": "0.2.5",
52
+ "@frockbot/client-core": "0.2.5",
53
+ "@frockbot/client-ui": "0.2.5",
54
+ "@frockbot/computer-core": "0.2.5",
55
+ "@frockbot/computer-host-protocol": "0.2.5",
56
+ "@frockbot/configuration-core": "0.2.5",
57
+ "@frockbot/connection-core": "0.2.5",
58
+ "@frockbot/kernel-agent-loop": "0.2.5",
59
+ "@frockbot/kernel-composition": "0.2.5",
60
+ "@frockbot/kernel-contracts": "0.2.5",
61
+ "@frockbot/kernel-do": "0.2.5",
62
+ "@frockbot/machine-protocol": "0.2.5",
63
+ "@frockbot/plugin-authoring": "0.2.5",
64
+ "@frockbot/plugin-package-catalog": "0.2.5",
65
+ "@frockbot/plugin-bot-template": "0.2.5",
66
+ "@frockbot/plugin-flock": "0.2.5",
67
+ "@frockbot/plugin-image": "0.2.5",
68
+ "@frockbot/plugin-machine-messages": "0.2.5",
69
+ "@frockbot/plugin-mcp": "0.2.5",
70
+ "@frockbot/plugin-memory": "0.2.5",
71
+ "@frockbot/plugin-routines": "0.2.5",
72
+ "@frockbot/plugin-skills": "0.2.5",
73
+ "@frockbot/plugin-subagents": "0.2.5",
74
+ "@frockbot/plugin-user-machine": "0.2.5",
75
+ "@frockbot/protocol": "0.2.5",
76
76
  "cordis": "4.0.0-rc.8",
77
77
  "vue": "3.5.41"
78
78
  },
79
79
  "devDependencies": {
80
80
  "@cloudflare/workers-types": "latest",
81
- "@frockbot/plugin-tools": "0.2.4",
81
+ "@frockbot/plugin-tools": "0.2.5",
82
82
  "@types/bun": "1.3.6",
83
83
  "@types/node": "26.2.0",
84
84
  "@vitejs/plugin-vue": "6.0.8",
@@ -620,15 +620,19 @@ export function decodePluginCatalog(value: unknown): PluginCatalogItem[] {
620
620
  !isRecord(candidate) ||
621
621
  // A Package that declares no configuration is serialised without the
622
622
  // key (JSON drops an undefined field), so the key is owned but optional.
623
- !hasExactFields(
624
- candidate,
625
- Object.hasOwn(candidate, "configuration")
626
- ? ["id", "displayName", "version", "contributions", "configuration"]
627
- : ["id", "displayName", "version", "contributions"],
628
- ) ||
623
+ !hasExactFields(candidate, [
624
+ "id",
625
+ "displayName",
626
+ "version",
627
+ "contributions",
628
+ ...(Object.hasOwn(candidate, "configuration") ? ["configuration"] : []),
629
+ ...(Object.hasOwn(candidate, "platformOwned") ? ["platformOwned"] : []),
630
+ ]) ||
629
631
  typeof candidate.id !== "string" ||
630
632
  typeof candidate.displayName !== "string" ||
631
633
  typeof candidate.version !== "string" ||
634
+ (candidate.platformOwned !== undefined &&
635
+ typeof candidate.platformOwned !== "boolean") ||
632
636
  !Array.isArray(candidate.contributions) ||
633
637
  candidate.contributions.length > 5 ||
634
638
  new Set(candidate.contributions).size !==
@@ -702,6 +706,7 @@ export function decodePluginCatalog(value: unknown): PluginCatalogItem[] {
702
706
  ? candidate.displayName
703
707
  : candidate.id,
704
708
  version: candidate.version,
709
+ ...(candidate.platformOwned === true ? { platformOwned: true } : {}),
705
710
  capabilities: decodedCapabilities,
706
711
  connectionTypes: decodedConnections,
707
712
  settings,
package/src/shared.ts CHANGED
@@ -117,6 +117,8 @@ export interface PluginCatalogItem {
117
117
  packageId: string;
118
118
  displayName: string;
119
119
  version: string;
120
+ /** Backend-derived manifest fact; platform infrastructure has no User toggle. */
121
+ platformOwned?: boolean;
120
122
  capabilities: Array<{
121
123
  id: string;
122
124
  kind: "model" | "tool" | "memory" | "notification" | "computer";