foundry-design 0.2.0-beta.14 → 0.2.0-beta.15

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/README.md CHANGED
@@ -6,7 +6,7 @@ Foundry is a local-first precision design workbench for Codex, Cursor, and Claud
6
6
 
7
7
  Foundry is distributed through npm, so testers do not need GitHub access.
8
8
 
9
- > **Release candidate:** `0.2.0-beta.14`. The commands below are prepared for this release and must not be promoted to npm `latest` until the full installation matrix passes.
9
+ > **Release candidate:** `0.2.0-beta.15`. The commands below are prepared for this release and must not be promoted to npm `latest` until the full installation matrix passes.
10
10
 
11
11
  Full documentation is available at [withfoundry.ai](https://withfoundry.ai).
12
12
 
@@ -110,6 +110,25 @@ Supported automatic web integration currently includes Next.js App Router, Vite,
110
110
 
111
111
  The npm setup above is the public beta installation path and includes the same portable skill and MCP connection used by the agent plugin bundle.
112
112
 
113
+ ### Agent-native installation
114
+
115
+ The npm installer remains the universal route. Foundry also ships one versioned plugin bundle for Codex, Cursor, and Claude Code, so each host can load the same skill, MCP bridge, and session guidance through its native plugin system.
116
+
117
+ For Claude Code, add the public marketplace and install Foundry once:
118
+
119
+ ```text
120
+ /plugin marketplace add seanx24x/foundry-design-control
121
+ /plugin install foundry-design-control@foundry-design-control
122
+ ```
123
+
124
+ Run `/reload-plugins`, open a project, then run `npx foundry-design` once to connect its development adapter.
125
+
126
+ For Cursor, use the one-click MCP connection below while the complete plugin awaits marketplace review. The repository contains a validated Cursor plugin with the Foundry skill, command, hook, and MCP bridge for local testing and submission.
127
+
128
+ For Codex, the repository contains the Agent Plugin and Codex presentation metadata used for public marketplace submission. Until that listing is available, `npx foundry-design install-agent codex` installs the identical shared skill and bridge without requiring the repository.
129
+
130
+ See [Distribution](DISTRIBUTION.md) for the exact supported route, validation command, and update boundary for every host.
131
+
113
132
  ### Claude Desktop extension
114
133
 
115
134
  The repository also produces a validated `.mcpb` extension for Claude Desktop. It bundles the local Foundry MCP bridge and can be installed through **Settings → Extensions → Advanced → Install Extension**. This provides a host-native alternative when a Claude Desktop surface does not merge the normal user-level Claude Code MCP configuration. Project instrumentation is still installed with `npx foundry-design`.
@@ -118,14 +137,14 @@ If an npm mirror or existing `npx` cache reports an old tag, bypass it with a te
118
137
 
119
138
  ```bash
120
139
  FOUNDRY_NPX_CACHE="$(mktemp -d)"
121
- npx --yes --prefer-online --registry=https://registry.npmjs.org --cache "$FOUNDRY_NPX_CACHE" --package=foundry-design@0.2.0-beta.14 foundry-design
140
+ npx --yes --prefer-online --registry=https://registry.npmjs.org --cache "$FOUNDRY_NPX_CACHE" --package=foundry-design@0.2.0-beta.15 foundry-design
122
141
  ```
123
142
 
124
143
  The beta supports Node.js 20 or newer. Read the [local-first safety model](https://withfoundry.ai/#safety) before using it with sensitive work.
125
144
 
126
145
  ## Agent plugin
127
146
 
128
- The portable plugin lives at `plugins/foundry-design-control`. The repository also includes marketplace manifests for Codex, Cursor, and Claude-compatible plugin import. Until public marketplace review is complete, `setup --global` installs the same reusable skill and MCP connection from npm without requiring source-repository access. Once installed, ask your agent:
147
+ The portable plugin lives at `plugins/foundry-design-control`. The repository also includes marketplace manifests for Codex, Cursor, and Claude-compatible plugin import. Until public marketplace review is complete, `npx foundry-design install` installs the same reusable skill and MCP connection from npm without requiring source-repository access. Once installed, ask your agent:
129
148
 
130
149
  ```text
131
150
  Start Foundry for this project.
@@ -135,7 +154,7 @@ Foundry remains local-first. Installing the plugin does not create an account, e
135
154
 
136
155
  ### Cursor one-click connection
137
156
 
138
- [Add the Foundry MCP bridge to Cursor](https://cursor.com/link/mcp/install?name=foundry-design-control&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIi0tcHJlZmVyLW9ubGluZSIsImZvdW5kcnktZGVzaWduLW1jcC1zZXJ2ZXJAMC4yLjAtYmV0YS4xNCJdfQ%3D%3D), then run `npx foundry-design` inside the project. The repository's Cursor plugin additionally bundles the Foundry skill and session-start hook for marketplace distribution.
157
+ [Add the Foundry MCP bridge to Cursor](cursor://anysphere.cursor-deeplink/mcp/install?name=foundry-design-control&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIi0tcHJlZmVyLW9ubGluZSIsImZvdW5kcnktZGVzaWduLW1jcC1zZXJ2ZXJAMC4yLjAtYmV0YS4xNSJdLCJlbnYiOnsiRk9VTkRSWV9ERVNJR05fUlVOVElNRV9VUkwiOiJodHRwOi8vMTI3LjAuMC4xOjQzODcifX0%3D), then run `npx foundry-design` inside the project. The repository's Cursor plugin additionally bundles the Foundry skill and session-start hook for marketplace distribution.
139
158
 
140
159
  ## Current capabilities
141
160
 
@@ -5,7 +5,7 @@ export interface CompanionProject {
5
5
  lastOpenedAt: string;
6
6
  }
7
7
  export interface CompanionState {
8
- version: 1;
8
+ version: 1 | 2;
9
9
  foundryVersion: string;
10
10
  agents: Agent[];
11
11
  projects: CompanionProject[];
@@ -17,6 +17,8 @@ export declare class CompanionStore {
17
17
  read(): Promise<CompanionState>;
18
18
  recordInstallation(agents: Agent[]): Promise<CompanionState>;
19
19
  registerProject(root: string, targetUrl?: string): Promise<CompanionState>;
20
+ unregisterProject(root: string): Promise<CompanionState>;
21
+ removeInstallation(agents: Agent[]): Promise<CompanionState>;
20
22
  private write;
21
23
  }
22
24
  //# sourceMappingURL=companion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"companion.d.ts","sourceRoot":"","sources":["../src/companion.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAG5C,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,CAAC,CAAC;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,cAAc;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAEV,IAAI,EAAE,MAAM;IAIlB,IAAI,IAAI,OAAO,CAAC,cAAc,CAAC;IAY/B,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAU5D,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;YAelE,KAAK;CAOpB"}
1
+ {"version":3,"file":"companion.d.ts","sourceRoot":"","sources":["../src/companion.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAG5C,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,cAAc;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAEV,IAAI,EAAE,MAAM;IAIlB,IAAI,IAAI,OAAO,CAAC,cAAc,CAAC;IAiC/B,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAW5D,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAgB1E,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAWxD,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;YAWpD,KAAK;CAOpB"}
package/dist/companion.js CHANGED
@@ -8,9 +8,25 @@ export class CompanionStore {
8
8
  }
9
9
  async read() {
10
10
  return readFile(this.path, 'utf8')
11
- .then((content) => JSON.parse(content))
11
+ .then((content) => {
12
+ const value = JSON.parse(content);
13
+ const agents = Array.isArray(value.agents)
14
+ ? value.agents.filter((agent) => ['codex', 'cursor', 'claude'].includes(agent))
15
+ : [];
16
+ const projects = Array.isArray(value.projects)
17
+ ? value.projects.filter((project) => Boolean(project?.root) && typeof project.lastOpenedAt === 'string')
18
+ : [];
19
+ const normalized = {
20
+ version: 2,
21
+ foundryVersion: value.foundryVersion ?? FOUNDRY_VERSION,
22
+ agents,
23
+ projects,
24
+ updatedAt: value.updatedAt ?? new Date(0).toISOString(),
25
+ };
26
+ return normalized;
27
+ })
12
28
  .catch(() => ({
13
- version: 1,
29
+ version: 2,
14
30
  foundryVersion: FOUNDRY_VERSION,
15
31
  agents: [],
16
32
  projects: [],
@@ -21,6 +37,7 @@ export class CompanionStore {
21
37
  const state = await this.read();
22
38
  return this.write({
23
39
  ...state,
40
+ version: 2,
24
41
  foundryVersion: FOUNDRY_VERSION,
25
42
  agents: [...new Set([...state.agents, ...agents])],
26
43
  updatedAt: new Date().toISOString(),
@@ -35,11 +52,32 @@ export class CompanionStore {
35
52
  };
36
53
  return this.write({
37
54
  ...state,
55
+ version: 2,
38
56
  foundryVersion: FOUNDRY_VERSION,
39
57
  projects: [project, ...state.projects.filter((candidate) => candidate.root !== project.root)],
40
58
  updatedAt: new Date().toISOString(),
41
59
  });
42
60
  }
61
+ async unregisterProject(root) {
62
+ const state = await this.read();
63
+ const resolvedRoot = resolve(root);
64
+ return this.write({
65
+ ...state,
66
+ version: 2,
67
+ projects: state.projects.filter((candidate) => candidate.root !== resolvedRoot),
68
+ updatedAt: new Date().toISOString(),
69
+ });
70
+ }
71
+ async removeInstallation(agents) {
72
+ const state = await this.read();
73
+ const removed = new Set(agents);
74
+ return this.write({
75
+ ...state,
76
+ version: 2,
77
+ agents: state.agents.filter((agent) => !removed.has(agent)),
78
+ updatedAt: new Date().toISOString(),
79
+ });
80
+ }
43
81
  async write(state) {
44
82
  await mkdir(dirname(this.path), { recursive: true });
45
83
  const temporary = `${this.path}.${process.pid}.tmp`;
@@ -1 +1 @@
1
- {"version":3,"file":"companion.js","sourceRoot":"","sources":["../src/companion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEnD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAgB/C,MAAM,OAAO,cAAc;IAChB,IAAI,CAAS;IAEtB,YAAY,IAAY;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,IAAI;QACR,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC;aAC/B,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAmB,CAAC;aACxD,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;YACZ,OAAO,EAAE,CAAC;YACV,cAAc,EAAE,eAAe;YAC/B,MAAM,EAAE,EAAE;YACV,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;SACrC,CAAC,CAAC,CAAC;IACR,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,MAAe;QACtC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,KAAK,CAAC;YAChB,GAAG,KAAK;YACR,cAAc,EAAE,eAAe;YAC/B,MAAM,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC;YAClD,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,IAAY,EAAE,SAAkB;QACpD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAChC,MAAM,OAAO,GAAqB;YAChC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC;YACnB,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnC,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACvC,CAAC;QACF,OAAO,IAAI,CAAC,KAAK,CAAC;YAChB,GAAG,KAAK;YACR,cAAc,EAAE,eAAe;YAC/B,QAAQ,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;YAC7F,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,KAAK,CAAC,KAAqB;QACvC,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,MAAM,CAAC;QACpD,MAAM,SAAS,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACnF,MAAM,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
1
+ {"version":3,"file":"companion.js","sourceRoot":"","sources":["../src/companion.ts"],"names":[],"mappings":"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"}
package/dist/doctor.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { SessionStore } from 'foundry-design-runtime';
2
2
  export type DoctorStatus = 'passed' | 'warning' | 'failed';
3
3
  export interface DoctorCheck {
4
- id: 'project' | 'platform' | 'config' | 'integration' | 'instrumentation' | 'agent-configured' | 'agent-config-valid' | 'agent-version' | 'preview' | 'runtime' | 'agent-listening';
4
+ id: 'project' | 'platform' | 'config' | 'project-connection' | 'integration' | 'instrumentation' | 'agent-configured' | 'agent-config-valid' | 'agent-version' | 'legacy-project-agent' | 'preview' | 'runtime' | 'agent-listening';
5
5
  label: string;
6
6
  status: DoctorStatus;
7
7
  detail: string;
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAItD,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE3D,MAAM,WAAW,WAAW;IAC1B,EAAE,EACE,SAAS,GACT,UAAU,GACV,QAAQ,GACR,aAAa,GACb,iBAAiB,GACjB,kBAAkB,GAClB,oBAAoB,GACpB,eAAe,GACf,SAAS,GACT,SAAS,GACT,iBAAiB,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;CACxB;AAaD,wBAAsB,mBAAmB,CACvC,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,YAAY,CAAC,CA0LvB"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAItD,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE3D,MAAM,WAAW,WAAW;IAC1B,EAAE,EACE,SAAS,GACT,UAAU,GACV,QAAQ,GACR,oBAAoB,GACpB,aAAa,GACb,iBAAiB,GACjB,kBAAkB,GAClB,oBAAoB,GACpB,eAAe,GACf,sBAAsB,GACtB,SAAS,GACT,SAAS,GACT,iBAAiB,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;CACxB;AAaD,wBAAsB,mBAAmB,CACvC,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,YAAY,CAAC,CAyNvB"}
package/dist/doctor.js CHANGED
@@ -37,17 +37,18 @@ export async function collectDoctorReport(projectRoot, options = {}) {
37
37
  return undefined;
38
38
  }
39
39
  });
40
- const candidateAgentFiles = [
40
+ const hostAgentFiles = [
41
41
  ...new Set([
42
- join(root, '.codex', 'config.toml'),
43
- join(root, '.cursor', 'mcp.json'),
44
- join(root, '.mcp.json'),
45
42
  join(home, '.codex', 'config.toml'),
46
43
  join(home, '.cursor', 'mcp.json'),
47
44
  join(home, '.claude.json'),
48
- join(home, '.mcp.json'),
49
45
  ]),
50
46
  ];
47
+ const projectAgentFiles = [
48
+ join(root, '.codex', 'config.toml'),
49
+ join(root, '.cursor', 'mcp.json'),
50
+ join(root, '.mcp.json'),
51
+ ].filter((path) => !hostAgentFiles.includes(path));
51
52
  const schemaCheckedAgentFiles = [
52
53
  ...new Set([
53
54
  join(root, '.cursor', 'mcp.json'),
@@ -68,7 +69,8 @@ export async function collectDoctorReport(projectRoot, options = {}) {
68
69
  return path;
69
70
  }
70
71
  }))).filter((path) => Boolean(path));
71
- const agentFiles = (await Promise.all(candidateAgentFiles.map(async (path) => ({ path, content: await text(path) })))).filter(({ content }) => content.includes('foundry-design-control'));
72
+ const agentFiles = (await Promise.all(hostAgentFiles.map(async (path) => ({ path, content: await text(path) })))).filter(({ content }) => content.includes('foundry-design-control'));
73
+ const legacyAgentFiles = (await Promise.all(projectAgentFiles.map(async (path) => ({ path, content: await text(path) })))).filter(({ content }) => content.includes('foundry-design-control'));
72
74
  const exactAgentFiles = agentFiles.filter(({ content }) => content.includes(FOUNDRY_MCP_PACKAGE_SPEC));
73
75
  const staleAgentFiles = agentFiles.filter(({ content }) => !content.includes(FOUNDRY_MCP_PACKAGE_SPEC));
74
76
  const runtimeHealthy = await available(fetcher, 'http://127.0.0.1:4387/v1/health');
@@ -100,6 +102,20 @@ export async function collectDoctorReport(projectRoot, options = {}) {
100
102
  status: config ? 'passed' : 'failed',
101
103
  detail: config ? configPath : 'Not configured.',
102
104
  },
105
+ {
106
+ id: 'project-connection',
107
+ label: 'Project connection',
108
+ status: config && (config.connection?.mode === 'global' || manifest?.connectionMode === 'global')
109
+ ? 'passed'
110
+ : config
111
+ ? 'warning'
112
+ : 'failed',
113
+ detail: config?.connection?.mode === 'global' || manifest?.connectionMode === 'global'
114
+ ? 'Lightweight project connection using the shared agent bridge.'
115
+ : config
116
+ ? 'Legacy project connection. Run doctor --repair to migrate it.'
117
+ : 'Not connected.',
118
+ },
103
119
  {
104
120
  id: 'integration',
105
121
  label: 'Managed integration',
@@ -146,6 +162,14 @@ export async function collectDoctorReport(projectRoot, options = {}) {
146
162
  ? FOUNDRY_MCP_PACKAGE_SPEC
147
163
  : `Expected ${FOUNDRY_MCP_PACKAGE_SPEC}.`,
148
164
  },
165
+ {
166
+ id: 'legacy-project-agent',
167
+ label: 'Project-scoped agent configuration',
168
+ status: legacyAgentFiles.length ? 'warning' : 'passed',
169
+ detail: legacyAgentFiles.length
170
+ ? `Foundry can migrate these legacy paths: ${legacyAgentFiles.map(({ path }) => path).join(', ')}`
171
+ : 'None. Agent integration is owned at machine level.',
172
+ },
149
173
  {
150
174
  id: 'preview',
151
175
  label: 'Project preview',
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAsCzE,KAAK,UAAU,IAAI,CAAC,IAAY;IAC9B,OAAO,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,OAAqB,EAAE,GAAY;IAC1D,IAAI,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC;IACvB,OAAO,OAAO,CAAC,GAAG,CAAC;SAChB,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;SAC/B,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;AACxB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,WAAmB,EACnB,UAAyB,EAAE;IAE3B,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC;IACvC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC;IACzC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,IAAI,YAAY,EAAE,CAAC;IAClD,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,qBAAqB,CAAC,CAAC;IACjE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;QACrD,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAKxB,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;QAC5F,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAkC,CAAC;QAC9D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC,CAAC,CAAC;IACH,MAAM,mBAAmB,GAAG;QAC1B,GAAG,IAAI,GAAG,CAAC;YACT,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,aAAa,CAAC;YACnC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC;YACjC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;YACvB,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,aAAa,CAAC;YACnC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC;YACjC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC;YAC1B,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;SACxB,CAAC;KACH,CAAC;IACF,MAAM,uBAAuB,GAAG;QAC9B,GAAG,IAAI,GAAG,CAAC;YACT,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC;YACjC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;YACvB,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC;YACjC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;SACxB,CAAC;KACH,CAAC;IACF,MAAM,iBAAiB,GAAG,CACxB,MAAM,OAAO,CAAC,GAAG,CACf,uBAAuB,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACzC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAA6B,CAAC;YAC/D,OAAO,MAAM,CAAC,UAAU,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;QACvF,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC,CAAC,CACH,CACF,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,CACjB,MAAM,OAAO,CAAC,GAAG,CACf,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAC/E,CACF,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACtE,MAAM,eAAe,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CACxD,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAC3C,CAAC;IACF,MAAM,eAAe,GAAG,UAAU,CAAC,MAAM,CACvC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAC7D,CAAC;IACF,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE,iCAAiC,CAAC,CAAC;IACnF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IACpD,MAAM,aAAa,GAAG,CAAC,GAAG,QAAQ,CAAC;SAChC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,KAAK,IAAI,CAAC;SACnE,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/F,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,cAAc,GAAG,kDAAkD,CAAC;IACxE,IAAI,cAAc,IAAI,aAAa,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC1F,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,QAAQ,GAAG,MAAM,OAAO,CAC5B,qCAAqC,aAAa,CAAC,SAAS,CAAC,SAAS,iBAAiB,EACvF,EAAE,OAAO,EAAE,EAAE,iBAAiB,EAAE,MAAM,CAAC,KAAK,EAAE,EAAE,CACjD,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YACzB,MAAM,QAAQ,GAAG,QAAQ,EAAE,EAAE;gBAC3B,CAAC,CAAE,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAGrB;gBACJ,CAAC,CAAC,SAAS,CAAC;YACd,SAAS,GAAG,QAAQ,EAAE,SAAS,KAAK,IAAI,CAAC;YACzC,IAAI,SAAS,EAAE,CAAC;gBACd,cAAc,GAAG,GAAG,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,IAAI,OAAO,uBAAuB,QAAQ,EAAE,QAAQ,EAAE,SAAS,IAAI,2BAA2B,GAAG,CAAC;YACvJ,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAkB;QAC5B,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE;QACnE,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE;QAClF;YACE,EAAE,EAAE,QAAQ;YACZ,KAAK,EAAE,uBAAuB;YAC9B,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;YACpC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB;SAChD;QACD;YACE,EAAE,EAAE,aAAa;YACjB,KAAK,EAAE,qBAAqB;YAC5B,MAAM,EACJ,QAAQ,EAAE,gBAAgB,KAAK,eAAe;gBAC5C,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,QAAQ,EAAE,gBAAgB;oBAC1B,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,QAAQ;YAChB,MAAM,EAAE,QAAQ,EAAE,gBAAgB,IAAI,gBAAgB;SACvD;QACD;YACE,EAAE,EAAE,iBAAiB;YACrB,KAAK,EAAE,iBAAiB;YACxB,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YACnD,MAAM,EAAE,MAAM,EAAE,YAAY;gBAC1B,CAAC,CAAC,GAAG,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,QAAQ,EAAE;gBAC1C,CAAC,CAAC,sBAAsB;SAC3B;QACD;YACE,EAAE,EAAE,kBAAkB;YACtB,KAAK,EAAE,kBAAkB;YACzB,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;YAC/C,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,iBAAiB;SAC9F;QACD;YACE,EAAE,EAAE,oBAAoB;YACxB,KAAK,EAAE,4BAA4B;YACnC,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;YACtD,MAAM,EAAE,iBAAiB,CAAC,MAAM;gBAC9B,CAAC,CAAC,8BAA8B,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;gBAC/D,CAAC,CAAC,iEAAiE;SACtE;QACD;YACE,EAAE,EAAE,eAAe;YACnB,KAAK,EAAE,uBAAuB;YAC9B,MAAM,EACJ,eAAe,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM;gBAC/D,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,UAAU,CAAC,MAAM;oBACjB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,QAAQ;YAChB,MAAM,EAAE,eAAe,CAAC,MAAM;gBAC5B,CAAC,CAAC,YAAY,wBAAwB,aAAa,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACvG,CAAC,CAAC,eAAe,CAAC,MAAM;oBACtB,CAAC,CAAC,wBAAwB;oBAC1B,CAAC,CAAC,YAAY,wBAAwB,GAAG;SAC9C;QACD;YACE,EAAE,EAAE,SAAS;YACb,KAAK,EAAE,iBAAiB;YACxB,MAAM,EACJ,QAAQ,KAAK,KAAK,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,CAAC,MAAM,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;gBACvF,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,MAAM,EAAE,SAAS;oBACjB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,QAAQ;YAChB,MAAM,EAAE,MAAM,EAAE,SAAS,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,eAAe,CAAC;SACxF;QACD;YACE,EAAE,EAAE,SAAS;YACb,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YAC7C,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,cAAc;SACvE;QACD;YACE,EAAE,EAAE,iBAAiB;YACrB,KAAK,EAAE,uBAAuB;YAC9B,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YACxC,MAAM,EAAE,cAAc;SACvB;KACF,CAAC;IACF,OAAO;QACL,OAAO,EAAE,eAAe;QACxB,WAAW,EAAE,IAAI;QACjB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,IAAI,SAAS;QACtE,MAAM;QACN,oBAAoB,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC;QACxD,eAAe,EAAE,aAAa,EAAE,SAAS,CAAC,SAAS;KACpD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -8,7 +8,7 @@ import { fileURLToPath } from 'node:url';
8
8
  import { homedir } from 'node:os';
9
9
  import { renderChangePrompt } from 'foundry-design-protocol';
10
10
  import { FoundryRuntime, SessionStore } from 'foundry-design-runtime';
11
- import { createSetupPlan, createUpdatePlan, installHostAgentIntegration, installAgentIntegration, setupProject, updateProject, uninstallProject, } from './installer.js';
11
+ import { createSetupPlan, createUpdatePlan, installHostAgentIntegration, installAgentIntegration, setupProject, updateProject, uninstallProject, uninstallHostAgentIntegration, } from './installer.js';
12
12
  import { addSessionParams, detectPlatform, normalizeTargetUrl, resolveProjectRoot, } from './project.js';
13
13
  import { indexProjectDesign } from './indexer.js';
14
14
  import { startBasicPreviewProxy } from './proxy.js';
@@ -38,10 +38,11 @@ function printHelp() {
38
38
 
39
39
  Usage:
40
40
  foundry-design [--project PATH] [--url URL] [--yes] [--no-start]
41
- foundry-design setup [--project PATH] [--agent codex,cursor,claude] [--global] [--url URL] [--yes]
41
+ foundry-design setup [--project PATH] [--agent codex,cursor,claude] [--project-agent] [--url URL] [--yes]
42
42
  foundry-design update [--project PATH] [--agent codex,cursor,claude] [--yes]
43
43
  foundry-design install [--agent codex,cursor,claude] [--yes]
44
44
  foundry-design connect [--project PATH] [--url URL] [--yes]
45
+ foundry-design disconnect [--project PATH] [--yes]
45
46
  foundry-design reset [--project PATH] [--agent codex,cursor,claude] [--url URL] [--yes]
46
47
  foundry-design companion [--json]
47
48
  foundry-design init <web|swiftui|react-native> [--project PATH]
@@ -49,9 +50,9 @@ Usage:
49
50
  foundry-design doctor [--project PATH] [--repair] [--json]
50
51
  foundry-design status [--project PATH] [--json]
51
52
  foundry-design index [--project PATH] [--output FILE]
52
- foundry-design uninstall [--project PATH] [--yes]
53
+ foundry-design uninstall [--project PATH] [--global] [--agent codex,cursor,claude] [--yes]
53
54
  foundry-design export <SESSION_ID> [--format json|prompt|full] [--output FILE]
54
- foundry-design install-agent <cursor|claude|codex> [--global | --project PATH]
55
+ foundry-design install-agent <cursor|claude|codex> [--project-agent --project PATH]
55
56
 
56
57
  Foundry is local-only and never edits product source from inspector controls.`);
57
58
  }
@@ -127,16 +128,19 @@ function requestedAgents() {
127
128
  throw new Error(`Unsupported agent: ${invalid.join(', ')}`);
128
129
  return [...new Set(agents)];
129
130
  }
131
+ async function sharedAgents(root, additional = []) {
132
+ const installed = await new CompanionStore(homedir()).read();
133
+ const detected = (await createSetupPlan(root)).agents;
134
+ return [...new Set([...installed.agents, ...additional, ...detected])];
135
+ }
130
136
  async function setup() {
131
137
  console.log(`${releasePreflight('set up this project')}\n`);
132
138
  const root = await projectRoot();
133
139
  const requested = requestedAgents();
134
- const sharedAgentSetup = has('--global');
135
- const detectedPlan = sharedAgentSetup
136
- ? await createSetupPlan(root, { agents: requested })
137
- : undefined;
140
+ const projectAgentSetup = has('--project-agent');
141
+ const hostAgents = requested ?? (await sharedAgents(root));
138
142
  const options = {
139
- agents: sharedAgentSetup ? [] : requested,
143
+ agents: projectAgentSetup ? hostAgents : [],
140
144
  targetUrl: normalizeTargetUrl(flag('--url')),
141
145
  packageRoot: has('--local-mcp') ? runtimeRepository : undefined,
142
146
  };
@@ -144,11 +148,9 @@ async function setup() {
144
148
  console.log(`Foundry setup\n\nProject: ${root}\nPlatform: ${plan.platform}`);
145
149
  if (plan.framework)
146
150
  console.log(`Framework: ${plan.framework}`);
147
- console.log(`Agent integration: ${sharedAgentSetup
148
- ? `${detectedPlan?.agents.join(', ')} (shared across projects)`
149
- : plan.agents.length
150
- ? plan.agents.join(', ')
151
- : 'plugin-provided'}`);
151
+ console.log(`Agent integration: ${projectAgentSetup
152
+ ? `${plan.agents.join(', ')} (project-scoped compatibility mode)`
153
+ : `${hostAgents.join(', ')} (shared across projects)`}`);
152
154
  console.log('\nFiles Foundry will manage:');
153
155
  for (const path of plan.files)
154
156
  console.log(` ${path}`);
@@ -160,12 +162,14 @@ async function setup() {
160
162
  return;
161
163
  }
162
164
  const result = await setupProject(root, options);
163
- if (sharedAgentSetup) {
164
- for (const agent of detectedPlan?.agents ?? []) {
165
+ if (!projectAgentSetup) {
166
+ for (const agent of hostAgents) {
165
167
  await installHostAgentIntegration(homedir(), agent, {
166
168
  packageRoot: options.packageRoot,
167
169
  });
168
170
  }
171
+ await new CompanionStore(homedir()).recordInstallation(hostAgents);
172
+ await new CompanionStore(homedir()).registerProject(root, result.targetUrl);
169
173
  }
170
174
  console.log(`\n✓ Foundry configured ${result.changed.length} files.`);
171
175
  for (const check of result.validation) {
@@ -175,16 +179,16 @@ async function setup() {
175
179
  if (result.skillDirectories.length) {
176
180
  console.log(`✓ Installed the Foundry skill for ${result.agents.join(', ')}.`);
177
181
  }
178
- if (sharedAgentSetup && detectedPlan?.agents.length) {
179
- console.log(`✓ Installed the shared Foundry connection for ${detectedPlan.agents.join(', ')}.`);
182
+ if (!projectAgentSetup && hostAgents.length) {
183
+ console.log(`✓ Installed the shared Foundry connection for ${hostAgents.join(', ')}.`);
180
184
  }
181
185
  if (result.targetUrl)
182
186
  console.log(`✓ Preview URL: ${result.targetUrl}`);
183
187
  if (result.devCommand)
184
188
  console.log(`✓ Development command: ${result.devCommand.command} ${result.devCommand.args.join(' ')}`);
185
189
  console.log('\nSetup complete. One coding-agent restart is required so it can load Foundry.');
186
- console.log(`1. Restart ${sharedAgentSetup && detectedPlan?.agents.length
187
- ? detectedPlan.agents.join(', ')
190
+ console.log(`1. Restart ${!projectAgentSetup && hostAgents.length
191
+ ? hostAgents.join(', ')
188
192
  : result.agents.length
189
193
  ? result.agents.join(', ')
190
194
  : 'your coding agent'}.`);
@@ -195,13 +199,18 @@ async function setup() {
195
199
  async function update() {
196
200
  console.log(`${releasePreflight('update this project')}\n`);
197
201
  const root = await projectRoot();
202
+ const requested = requestedAgents();
203
+ const projectAgentSetup = has('--project-agent');
204
+ const hostAgents = requested ?? (await sharedAgents(root));
198
205
  const options = {
199
- agents: requestedAgents(),
206
+ agents: projectAgentSetup ? hostAgents : [],
200
207
  packageRoot: has('--local-mcp') ? runtimeRepository : undefined,
201
208
  };
202
209
  const plan = await createUpdatePlan(root, options);
203
210
  console.log(`Foundry update\n\nProject: ${root}`);
204
- console.log(`Agent integration: ${plan.agents.join(', ')}`);
211
+ console.log(`Agent integration: ${projectAgentSetup
212
+ ? `${plan.agents.join(', ')} (project-scoped compatibility mode)`
213
+ : `${hostAgents.join(', ')} (shared across projects)`}`);
205
214
  console.log('\nFoundry will refresh these managed paths:');
206
215
  for (const path of plan.files)
207
216
  console.log(` ${path}`);
@@ -211,6 +220,14 @@ async function update() {
211
220
  return;
212
221
  }
213
222
  const result = await updateProject(root, options);
223
+ if (!projectAgentSetup) {
224
+ for (const agent of hostAgents)
225
+ await installHostAgentIntegration(homedir(), agent, {
226
+ packageRoot: options.packageRoot,
227
+ });
228
+ await new CompanionStore(homedir()).recordInstallation(hostAgents);
229
+ await new CompanionStore(homedir()).registerProject(root, result.targetUrl);
230
+ }
214
231
  console.log(`\n✓ Foundry refreshed ${result.changed.length} managed paths.`);
215
232
  if (result.preserved.length) {
216
233
  console.log('Preserved files containing user changes:');
@@ -221,7 +238,7 @@ async function update() {
221
238
  const marker = check.status === 'passed' ? '✓' : check.status === 'skipped' ? '–' : '!';
222
239
  console.log(`${marker} ${check.name}: ${check.status.replaceAll('-', ' ')}`);
223
240
  }
224
- console.log('\nRestart your coding agent so it loads the refreshed Foundry connection and skill.');
241
+ console.log('\nThe project now uses the shared Foundry agent connection.');
225
242
  }
226
243
  async function initProject() {
227
244
  console.log(`${releasePreflight('initialize this project')}\n`);
@@ -412,6 +429,31 @@ async function indexDesign() {
412
429
  console.log(content);
413
430
  }
414
431
  async function uninstall() {
432
+ if (has('--global')) {
433
+ const installed = await new CompanionStore(homedir()).read();
434
+ const agents = requestedAgents() ?? installed.agents;
435
+ if (!agents.length) {
436
+ console.log('No shared Foundry agent connection is registered.');
437
+ return;
438
+ }
439
+ if (!(await confirm(`Remove the shared Foundry connection for ${agents.join(', ')}?`))) {
440
+ console.log('Uninstall cancelled.');
441
+ return;
442
+ }
443
+ const preserved = [];
444
+ for (const agent of agents) {
445
+ const result = await uninstallHostAgentIntegration(homedir(), agent);
446
+ preserved.push(...result.preserved);
447
+ }
448
+ await new CompanionStore(homedir()).removeInstallation(agents);
449
+ console.log(`Removed the shared Foundry connection for ${agents.join(', ')}.`);
450
+ if (preserved.length) {
451
+ console.log('Preserved customized skill files:');
452
+ for (const path of preserved)
453
+ console.log(` ${path}`);
454
+ }
455
+ return;
456
+ }
415
457
  console.log(`${releasePreflight('remove managed project integration')}\n`);
416
458
  const root = await projectRoot();
417
459
  if (!(await confirm(`Remove Foundry-managed project integration from ${root}?`))) {
@@ -426,6 +468,15 @@ async function uninstall() {
426
468
  console.log(` ${path}`);
427
469
  }
428
470
  }
471
+ async function disconnect() {
472
+ const root = await projectRoot();
473
+ if (!(await confirm(`Disconnect ${root} from Foundry's recent projects?`))) {
474
+ console.log('Disconnect cancelled.');
475
+ return;
476
+ }
477
+ await new CompanionStore(homedir()).unregisterProject(root);
478
+ console.log(`Disconnected ${root}. The project adapter remains installed and can reconnect later.`);
479
+ }
429
480
  async function doctor() {
430
481
  const root = await projectRoot();
431
482
  const report = await collectDoctorReport(root);
@@ -442,15 +493,12 @@ async function doctor() {
442
493
  }
443
494
  if (has('--repair')) {
444
495
  console.log(`\n${releasePreflight('repair this project and agent connection')}\n`);
445
- const detectedAgents = (await createSetupPlan(root)).agents;
446
496
  const installed = report.checks.find((check) => check.id === 'integration')?.status !== 'failed';
447
497
  const configuredAgents = installed ? (await createUpdatePlan(root)).agents : [];
448
- const hostAgents = [
449
- ...new Set([...configuredAgents, ...detectedAgents, 'codex', 'cursor', 'claude']),
450
- ];
498
+ const hostAgents = await sharedAgents(root, configuredAgents);
451
499
  const result = installed
452
500
  ? await updateProject(root, {
453
- agents: configuredAgents,
501
+ agents: [],
454
502
  targetUrl: normalizeTargetUrl(flag('--url')),
455
503
  })
456
504
  : await setupProject(root, {
@@ -461,10 +509,13 @@ async function doctor() {
461
509
  await installHostAgentIntegration(homedir(), agent, {
462
510
  packageRoot: has('--local-mcp') ? runtimeRepository : undefined,
463
511
  });
512
+ await new CompanionStore(homedir()).recordInstallation(hostAgents);
513
+ await new CompanionStore(homedir()).registerProject(root, result.targetUrl);
464
514
  console.log(`✓ Repaired ${result.changed.length} managed paths and the shared ${hostAgents.join(', ')} connection.`);
465
515
  const repaired = await collectDoctorReport(root);
466
516
  const requiredAfterRepair = new Set([
467
517
  'config',
518
+ 'project-connection',
468
519
  'integration',
469
520
  'agent-configured',
470
521
  'agent-config-valid',
@@ -488,12 +539,8 @@ async function launch() {
488
539
  const root = await projectRoot();
489
540
  const manifest = join(root, '.foundry', 'install-manifest.json');
490
541
  const installed = await pathExists(manifest);
491
- const detectedAgents = (await createSetupPlan(root)).agents;
492
542
  const configuredAgents = installed ? (await createUpdatePlan(root)).agents : [];
493
- const resolvedAgents = [...new Set([...configuredAgents, ...detectedAgents])];
494
- const hostAgents = resolvedAgents.length
495
- ? resolvedAgents
496
- : ['codex', 'cursor', 'claude'];
543
+ const hostAgents = await sharedAgents(root, configuredAgents);
497
544
  console.log(`Foundry\n\nProject: ${root}`);
498
545
  console.log(`${installed ? 'Refreshing' : 'Preparing'} the project and shared ${hostAgents.join(', ')} connection.`);
499
546
  if (!(await confirm('Continue?'))) {
@@ -502,7 +549,7 @@ async function launch() {
502
549
  }
503
550
  const result = installed
504
551
  ? await updateProject(root, {
505
- agents: configuredAgents,
552
+ agents: [],
506
553
  targetUrl: normalizeTargetUrl(flag('--url')),
507
554
  })
508
555
  : await setupProject(root, {
@@ -553,7 +600,7 @@ async function installAgent() {
553
600
  const agent = args[1];
554
601
  if (!agent || !['cursor', 'claude', 'codex'].includes(agent))
555
602
  throw new Error('install-agent requires cursor, claude, or codex');
556
- if (has('--global')) {
603
+ if (!has('--project-agent')) {
557
604
  const result = await installHostAgentIntegration(homedir(), agent, {
558
605
  packageRoot: has('--local-mcp') ? runtimeRepository : undefined,
559
606
  });
@@ -566,7 +613,7 @@ async function installAgent() {
566
613
  console.log(` ${path}`);
567
614
  }
568
615
  await new CompanionStore(homedir()).recordInstallation([agent]);
569
- console.log(`Restart ${agent === 'codex' ? 'Codex' : agent === 'cursor' ? 'Cursor' : 'Claude Code'} once. Future projects can use "npx foundry-design setup --agent none --yes" without another MCP install.`);
616
+ console.log(`Restart ${agent === 'codex' ? 'Codex' : agent === 'cursor' ? 'Cursor' : 'Claude Code'} once. Future projects connect with "npx foundry-design" without another MCP install.`);
570
617
  return;
571
618
  }
572
619
  const root = await projectRoot();
@@ -597,17 +644,13 @@ async function reset() {
597
644
  const installed = await pathExists(join(root, '.foundry', 'install-manifest.json'));
598
645
  const configuredAgents = installed ? (await createUpdatePlan(root)).agents : [];
599
646
  const requested = requestedAgents();
600
- const projectAgents = requested ?? configuredAgents;
601
- const detectedAgents = (await createSetupPlan(root)).agents;
602
- const hostAgents = [
603
- ...new Set([...configuredAgents, ...detectedAgents, 'codex', 'cursor', 'claude']),
604
- ];
647
+ const hostAgents = requested ?? (await sharedAgents(root, configuredAgents));
605
648
  if (!(await confirm(`Reset Foundry-managed integration for ${root}?`))) {
606
649
  console.log('Reset cancelled.');
607
650
  return;
608
651
  }
609
652
  const options = {
610
- agents: projectAgents,
653
+ agents: [],
611
654
  targetUrl: normalizeTargetUrl(flag('--url')),
612
655
  packageRoot: has('--local-mcp') ? runtimeRepository : undefined,
613
656
  };
@@ -652,6 +695,8 @@ try {
652
695
  await installHost();
653
696
  else if (command === 'connect')
654
697
  await launch();
698
+ else if (command === 'disconnect')
699
+ await disconnect();
655
700
  else if (command === 'reset')
656
701
  await reset();
657
702
  else if (command === 'companion')
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,9 @@ export interface FoundryProjectConfig {
13
13
  };
14
14
  instrumented: boolean;
15
15
  mode?: 'precision' | 'basic';
16
+ connection?: {
17
+ mode: 'global' | 'project';
18
+ };
16
19
  design?: {
17
20
  tokenFiles?: string[];
18
21
  componentRoots?: string[];
@@ -86,8 +89,15 @@ export interface HostAgentIntegration {
86
89
  skillDirectory: string;
87
90
  preserved: string[];
88
91
  }
92
+ export interface HostAgentUninstallResult {
93
+ configFile: string;
94
+ removed: string[];
95
+ preserved: string[];
96
+ }
89
97
  /** Install one reusable user-level connection without placing MCP config in every project. */
90
98
  export declare function installHostAgentIntegration(homeInput: string, agent: Agent, options?: Pick<SetupOptions, 'packageRoot' | 'skillRoot'>): Promise<HostAgentIntegration>;
99
+ /** Remove only Foundry-owned user-level configuration and skill files. */
100
+ export declare function uninstallHostAgentIntegration(homeInput: string, agent: Agent): Promise<HostAgentUninstallResult>;
91
101
  export declare function createUpdatePlan(rootInput: string, options?: SetupOptions): Promise<SetupPlan>;
92
102
  export declare function updateProject(rootInput: string, options?: SetupOptions): Promise<SetupResult>;
93
103
  export declare function setupProject(rootInput: string, options?: SetupOptions): Promise<SetupResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"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"}
package/dist/installer.js CHANGED
@@ -643,6 +643,62 @@ export async function installHostAgentIntegration(homeInput, agent, options = {}
643
643
  }, null, 2)}\n`);
644
644
  return { configFile, skillDirectory, preserved };
645
645
  }
646
+ /** Remove only Foundry-owned user-level configuration and skill files. */
647
+ export async function uninstallHostAgentIntegration(homeInput, agent) {
648
+ const home = resolve(homeInput);
649
+ const agentRoot = agent === 'codex'
650
+ ? join(home, '.codex')
651
+ : agent === 'cursor'
652
+ ? join(home, '.cursor')
653
+ : join(home, '.claude');
654
+ const configFile = agent === 'codex'
655
+ ? join(agentRoot, 'config.toml')
656
+ : agent === 'cursor'
657
+ ? join(agentRoot, 'mcp.json')
658
+ : join(home, '.claude.json');
659
+ const skillDirectory = join(agentRoot, 'skills', 'foundry-design-control');
660
+ const manifestFile = join(skillDirectory, '.foundry-install.json');
661
+ const manifest = await readFile(manifestFile, 'utf8')
662
+ .then((content) => JSON.parse(content))
663
+ .catch(() => undefined);
664
+ const removed = [];
665
+ const preserved = [];
666
+ if (agent === 'codex') {
667
+ const original = await readText(configFile);
668
+ if (original.includes(START)) {
669
+ await writeFile(configFile, stripManagedBlock(original));
670
+ removed.push(configFile);
671
+ }
672
+ }
673
+ else {
674
+ const original = await readText(configFile);
675
+ if (original.includes('foundry-design-control')) {
676
+ await removeJsonServer(configFile);
677
+ removed.push(configFile);
678
+ }
679
+ }
680
+ for (const file of manifest?.generatedFiles ?? []) {
681
+ const content = await readText(file.path);
682
+ if (!content)
683
+ continue;
684
+ if (digest(content) !== file.sha256) {
685
+ preserved.push(file.path);
686
+ continue;
687
+ }
688
+ await rm(file.path);
689
+ removed.push(file.path);
690
+ }
691
+ await rm(manifestFile, { force: true });
692
+ removed.push(manifestFile);
693
+ const directories = [
694
+ join(skillDirectory, 'references'),
695
+ join(skillDirectory, 'scripts'),
696
+ skillDirectory,
697
+ ];
698
+ for (const directory of directories)
699
+ await rmdir(directory).catch(() => undefined);
700
+ return { configFile, removed: [...new Set(removed)], preserved };
701
+ }
646
702
  export async function createUpdatePlan(rootInput, options = {}) {
647
703
  const root = resolve(rootInput);
648
704
  const manifest = await readFile(join(root, '.foundry', 'install-manifest.json'), 'utf8')
@@ -655,7 +711,9 @@ export async function createUpdatePlan(rootInput, options = {}) {
655
711
  .catch(() => undefined);
656
712
  return createSetupPlan(root, {
657
713
  ...options,
658
- agents: options.agents ?? manifest.agents,
714
+ // Beta.14 makes the reusable host bridge the default. Passing agents
715
+ // explicitly remains the opt-in escape hatch for project-scoped installs.
716
+ agents: options.agents ?? [],
659
717
  targetUrl: options.targetUrl ?? config?.targetUrl,
660
718
  update: true,
661
719
  });
@@ -689,6 +747,11 @@ export async function setupProject(rootInput, options = {}) {
689
747
  const previousManifest = await readFile(join(plan.root, '.foundry', 'install-manifest.json'), 'utf8')
690
748
  .then((content) => JSON.parse(content))
691
749
  .catch(() => undefined);
750
+ const hasLegacyProjectAgentIntegration = Boolean(previousManifest &&
751
+ ((previousManifest.agents ?? []).length ||
752
+ (previousManifest.jsonConfigs ?? []).length ||
753
+ previousManifest.skillDirectories?.length ||
754
+ (previousManifest.managedBlocks ?? []).some((path) => path.endsWith(join('.codex', 'config.toml')))));
692
755
  if (options.update && !previousManifest) {
693
756
  throw new Error(`Foundry is not installed in ${plan.root}. Run setup first.`);
694
757
  }
@@ -702,6 +765,15 @@ export async function setupProject(rootInput, options = {}) {
702
765
  const transactionFiles = [
703
766
  ...plan.files.filter((path) => !plan.skillDirectories.includes(path)),
704
767
  ...plan.skillDirectories.flatMap((directory) => skillFiles.map((file) => join(directory, file.path))),
768
+ ...(plan.agents.length === 0 && hasLegacyProjectAgentIntegration
769
+ ? [
770
+ ...(previousManifest?.managedBlocks ?? []).filter((path) => path.endsWith(join('.codex', 'config.toml'))),
771
+ ...(previousManifest?.jsonConfigs ?? []),
772
+ ...(previousManifest?.generatedFiles ?? [])
773
+ .filter((file) => (previousManifest?.skillDirectories ?? []).some((directory) => file.path === directory || file.path.startsWith(`${directory}/`)))
774
+ .map((file) => file.path),
775
+ ]
776
+ : []),
705
777
  ];
706
778
  const snapshots = await snapshotFiles(transactionFiles);
707
779
  const checks = await validationCommands(plan.root);
@@ -719,6 +791,7 @@ export async function setupProject(rootInput, options = {}) {
719
791
  ...(plan.devCommand ? { devCommand: plan.devCommand } : {}),
720
792
  instrumented: plan.platform !== 'web' || Boolean(plan.integrationFile),
721
793
  mode: plan.platform === 'web' && !plan.integrationFile ? 'basic' : 'precision',
794
+ connection: { mode: plan.agents.length ? 'project' : 'global' },
722
795
  design: {
723
796
  componentRoots: ['src', 'app', 'components'],
724
797
  exclude: ['node_modules', 'dist', 'build', '.next', 'coverage'],
@@ -789,9 +862,38 @@ export async function setupProject(rootInput, options = {}) {
789
862
  skillDirectories.push(...copied.directories);
790
863
  changed.push(directory);
791
864
  }
865
+ if (plan.agents.length === 0 && previousManifest && hasLegacyProjectAgentIntegration) {
866
+ const legacySkillDirectories = previousManifest.skillDirectories ?? [];
867
+ for (const path of (previousManifest.managedBlocks ?? []).filter((candidate) => candidate.endsWith(join('.codex', 'config.toml')))) {
868
+ const original = await readText(path);
869
+ if (!original)
870
+ continue;
871
+ await writeFile(path, stripManagedBlock(original));
872
+ changed.push(path);
873
+ }
874
+ for (const path of previousManifest.jsonConfigs ?? []) {
875
+ await removeJsonServer(path);
876
+ changed.push(path);
877
+ }
878
+ for (const file of previousManifest.generatedFiles.filter((candidate) => legacySkillDirectories.some((directory) => candidate.path === directory || candidate.path.startsWith(`${directory}/`)))) {
879
+ const content = await readText(file.path);
880
+ if (!content)
881
+ continue;
882
+ if (digest(content) !== file.sha256) {
883
+ preserved.push(file.path);
884
+ continue;
885
+ }
886
+ await rm(file.path);
887
+ changed.push(file.path);
888
+ }
889
+ for (const directory of [...legacySkillDirectories].sort((left, right) => right.length - left.length)) {
890
+ await rmdir(directory).catch(() => undefined);
891
+ }
892
+ }
792
893
  const validation = await validateInstalledProject(plan.root, checks, baseline, changed);
793
894
  const manifest = {
794
- version: 2,
895
+ version: 3,
896
+ connectionMode: plan.agents.length ? 'project' : 'global',
795
897
  agents: plan.agents,
796
898
  generatedFiles: generated,
797
899
  managedBlocks,
@@ -826,8 +928,10 @@ async function removeJsonServer(path) {
826
928
  if (!current.mcpServers?.['foundry-design-control'])
827
929
  return;
828
930
  delete current.mcpServers['foundry-design-control'];
931
+ // Keep the required object even when Foundry was its only entry. Claude and
932
+ // some other hosts reject a bare object and may skip every user MCP server.
829
933
  if (Object.keys(current.mcpServers).length === 0)
830
- delete current.mcpServers;
934
+ current.mcpServers = {};
831
935
  await writeFile(path, `${JSON.stringify(current, null, 2)}\n`);
832
936
  }
833
937
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"installer.js","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"installer.js","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"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"}
package/dist/release.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- export declare const FOUNDRY_VERSION = "0.2.0-beta.13";
2
- export declare const FOUNDRY_PACKAGE_SPEC = "foundry-design@0.2.0-beta.13";
3
- export declare const FOUNDRY_MCP_PACKAGE_SPEC = "foundry-design-mcp-server@0.2.0-beta.13";
1
+ export declare const FOUNDRY_VERSION = "0.2.0-beta.15";
2
+ export declare const FOUNDRY_PACKAGE_SPEC = "foundry-design@0.2.0-beta.15";
3
+ export declare const FOUNDRY_MCP_PACKAGE_SPEC = "foundry-design-mcp-server@0.2.0-beta.15";
4
4
  export declare function releasePreflight(action: string): string;
5
5
  //# sourceMappingURL=release.d.ts.map
package/dist/release.js CHANGED
@@ -1,4 +1,4 @@
1
- export const FOUNDRY_VERSION = '0.2.0-beta.13';
1
+ export const FOUNDRY_VERSION = '0.2.0-beta.15';
2
2
  export const FOUNDRY_PACKAGE_SPEC = `foundry-design@${FOUNDRY_VERSION}`;
3
3
  export const FOUNDRY_MCP_PACKAGE_SPEC = `foundry-design-mcp-server@${FOUNDRY_VERSION}`;
4
4
  export function releasePreflight(action) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "foundry-design",
3
- "version": "0.2.0-beta.14",
3
+ "version": "0.2.0-beta.15",
4
4
  "description": "Install and run the local-first Foundry visual design control plane",
5
5
  "type": "module",
6
6
  "files": [
@@ -34,8 +34,8 @@
34
34
  "inspector"
35
35
  ],
36
36
  "dependencies": {
37
- "foundry-design-protocol": "0.2.0-beta.14",
38
- "foundry-design-runtime": "0.2.0-beta.14"
37
+ "foundry-design-protocol": "0.2.0-beta.15",
38
+ "foundry-design-runtime": "0.2.0-beta.15"
39
39
  },
40
40
  "scripts": {
41
41
  "build": "tsc -p tsconfig.json && node ../../scripts/copy-cli-skill.mjs",