Skip to content

Commit 50b4e32

Browse files
authored
Merge pull request #284 from proofsh/codex/move-proofkit-cli
move cli
2 parents 80bb67a + 5d1fe11 commit 50b4e32

266 files changed

Lines changed: 7401 additions & 6556 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
"@proofkit/cli": patch
3+
"create-proofkit": patch
4+
---
5+
6+
Move current ProofKit CLI and create-proofkit packages back into public release flow.

packages/cli/.yarnrc.yml

Lines changed: 0 additions & 5 deletions
This file was deleted.

packages/cli/CHANGELOG.md

Lines changed: 78 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,90 @@
11
# @proofgeist/kit
22

3-
## 2.0.7
3+
## 2.2.2
44

55
### Patch Changes
66

7-
- c19e10a: Fix no-install init post setup.
8-
- bbed9c8: Remove generated devEngines runtime block and loosen package manager version.
7+
- ff18231: Read ProofKit CLI version from package.json at build time.
98

10-
## 2.0.6
9+
## 2.2.2-beta.0
1110

1211
### Patch Changes
1312

14-
- cfa4f59: Handle ProofKit Plugin authorization and clarify FM MCP authorization prompts.
13+
- ff18231: Read ProofKit CLI version from package.json at build time.
14+
15+
## 2.2.1
16+
17+
### Patch Changes
18+
19+
- Fix CLI version reporting in installer binary. The bundled proofkit binary now regenerates package-versions.ts before compilation, ensuring the correct version is baked in.
20+
21+
## 2.2.0
22+
23+
### Minor Changes
24+
25+
- 7d48139: Ship ProofKit CLI in installer and publish CLI packages.
26+
27+
### Patch Changes
28+
29+
- b1d4a68: Publish CLI beta releases to npm when Changesets is in beta pre mode.
30+
- cd0f06f: Set installed proofkit launcher template root from app payload and remove redundant agent setup next step.
31+
- 34b3c3c: Fix lint failures in freshly scaffolded projects:
32+
- Stop writing a competing legacy `.oxlintrc.json` alongside Ultracite v7's scaffolded `oxlint.config.ts` for webviewer apps. The CLI now writes `oxlint.config.ts` for both browser and webviewer app types.
33+
- Drop the `// @ts-nocheck` directive from the generated `oxlint.config.ts`. It is no longer needed (oxlint v1 ships proper types for `defineConfig`) and was itself failing Ultracite's `typescript/ban-ts-comment` rule.
34+
- Remove unused `redirect` import from the `vite-wv` `router.tsx` template that was triggering an `eslint/no-unused-vars` error on first lint.
35+
36+
- d58e177: Include initial props wiring in generated WebViewer apps.
37+
- dbab7b3: Fix ultracite init during scaffold; now uses latest major version 7
38+
- 50dacdf: Add transient ProofKit token passthrough for local FileMaker MCP setup.
39+
- a0604e8: Remove generated app dependency on `@proofkit/cli`, allow compatible package manager minor versions, and print recovery details when dependency install fails during init.
40+
- deb859d: Install Bun before npm publish binary build.
41+
- 2a11681: Raise generated app Node floor to avoid pnpm skipping native oxlint bindings.
42+
43+
## 2.2.0-beta.6
44+
45+
### Patch Changes
46+
47+
- 34b3c3c: Fix lint failures in freshly scaffolded projects:
48+
- Stop writing a competing legacy `.oxlintrc.json` alongside Ultracite v7's scaffolded `oxlint.config.ts` for webviewer apps. The CLI now writes `oxlint.config.ts` for both browser and webviewer app types.
49+
- Drop the `// @ts-nocheck` directive from the generated `oxlint.config.ts`. It is no longer needed (oxlint v1 ships proper types for `defineConfig`) and was itself failing Ultracite's `typescript/ban-ts-comment` rule.
50+
- Remove unused `redirect` import from the `vite-wv` `router.tsx` template that was triggering an `eslint/no-unused-vars` error on first lint.
51+
52+
## 2.2.0-beta.5
53+
54+
### Patch Changes
55+
56+
- deb859d: Install Bun before npm publish binary build.
57+
- 2a11681: Raise generated app Node floor to avoid pnpm skipping native oxlint bindings.
58+
59+
## 2.2.0-beta.4
60+
61+
### Patch Changes
62+
63+
- dbab7b3: Fix ultracite init during scaffold; now uses latest major version 7
64+
65+
## 2.2.0-beta.3
66+
67+
### Patch Changes
68+
69+
- b1d4a68: Publish CLI beta releases to npm when Changesets is in beta pre mode.
70+
- d58e177: Include initial props wiring in generated WebViewer apps.
71+
- a0604e8: Remove generated app dependency on `@proofkit/cli`, allow compatible package manager minor versions, and print recovery details when dependency install fails during init.
72+
73+
## 2.1.0-beta.1
74+
75+
### Patch Changes
76+
77+
- cd0f06f: Set installed proofkit launcher template root from app payload and remove redundant agent setup next step.
78+
79+
## 2.1.0-beta.0
80+
81+
### Minor Changes
82+
83+
- 7d48139: Ship ProofKit CLI in installer and publish CLI packages.
84+
85+
### Patch Changes
86+
87+
- 50dacdf: Add transient ProofKit token passthrough for local FileMaker MCP setup.
1588

1689
## 2.0.5
1790

packages/cli/bin/proofkit.cjs

Lines changed: 40 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -6,54 +6,56 @@ const path = require("node:path");
66
const { spawnSync } = require("node:child_process");
77

88
const BINARIES = {
9-
darwin: {
10-
arm64: "proofkit-darwin-arm64",
11-
x64: "proofkit-darwin-x64",
12-
},
13-
linux: {
14-
arm64: "proofkit-linux-arm64",
15-
x64: "proofkit-linux-x64",
16-
},
17-
win32: {
18-
arm64: "proofkit-windows-arm64.exe",
19-
x64: "proofkit-windows-x64.exe",
20-
},
9+
darwin: {
10+
arm64: "proofkit-darwin-arm64",
11+
x64: "proofkit-darwin-x64",
12+
},
13+
linux: {
14+
arm64: "proofkit-linux-arm64",
15+
x64: "proofkit-linux-x64",
16+
},
17+
win32: {
18+
arm64: "proofkit-windows-arm64.exe",
19+
x64: "proofkit-windows-x64.exe",
20+
},
2121
};
2222

2323
function run(command, args) {
24-
const result = spawnSync(command, args, {
25-
stdio: "inherit",
26-
env: {
27-
...process.env,
28-
PROOFKIT_PKG_ROOT: path.resolve(__dirname, ".."),
29-
},
30-
});
31-
32-
if (result.error) {
33-
throw result.error;
34-
}
35-
36-
if (typeof result.status === "number") {
37-
process.exit(result.status);
38-
}
39-
40-
process.exit(1);
24+
const result = spawnSync(command, args, {
25+
stdio: "inherit",
26+
env: {
27+
...process.env,
28+
PROOFKIT_PKG_ROOT: path.resolve(__dirname, ".."),
29+
},
30+
});
31+
32+
if (result.error) {
33+
throw result.error;
34+
}
35+
36+
if (typeof result.status === "number") {
37+
process.exit(result.status);
38+
}
39+
40+
process.exit(1);
4141
}
4242

4343
if (process.env.PROOFKIT_DISABLE_BUNDLED_BINARY !== "1") {
44-
const binaryName = BINARIES[process.platform]?.[process.arch];
45-
if (binaryName) {
46-
const binaryPath = path.join(__dirname, binaryName);
47-
if (existsSync(binaryPath)) {
48-
run(binaryPath, process.argv.slice(2));
49-
}
50-
}
44+
const binaryName = BINARIES[process.platform]?.[process.arch];
45+
if (binaryName) {
46+
const binaryPath = path.join(__dirname, binaryName);
47+
if (existsSync(binaryPath)) {
48+
run(binaryPath, process.argv.slice(2));
49+
}
50+
}
5151
}
5252

5353
const fallbackPath = path.join(__dirname, "..", "dist", "index.js");
5454
if (existsSync(fallbackPath)) {
55-
run(process.execPath, [fallbackPath, ...process.argv.slice(2)]);
55+
run(process.execPath, [fallbackPath, ...process.argv.slice(2)]);
5656
}
5757

58-
console.error(`No ProofKit executable found for ${process.platform}-${process.arch}.`);
58+
console.error(
59+
`No ProofKit executable found for ${process.platform}-${process.arch}.`,
60+
);
5961
process.exit(1);

packages/cli/index.d.ts

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
11
export interface RouteLink {
2-
label: string;
3-
type: "link";
4-
href: string;
5-
icon?: React.ReactNode;
6-
/** If true, the route will only be considered active if the path is exactly this value. */
7-
exactMatch?: boolean;
2+
label: string;
3+
type: "link";
4+
href: string;
5+
icon?: React.ReactNode;
6+
/** If true, the route will only be considered active if the path is exactly this value. */
7+
exactMatch?: boolean;
88
}
99

1010
export interface RouteFunction {
11-
label: string;
12-
type: "function";
13-
icon?: React.ReactNode;
14-
onClick: () => void;
15-
/** If true, the route will only be considered active if the path is exactly this value. */
16-
exactMatch?: boolean;
11+
label: string;
12+
type: "function";
13+
icon?: React.ReactNode;
14+
onClick: () => void;
15+
/** If true, the route will only be considered active if the path is exactly this value. */
16+
exactMatch?: boolean;
1717
}
1818

1919
export type ProofKitRoute = RouteLink | RouteFunction;

packages/cli/package.json

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@proofkit/cli",
3-
"version": "2.0.7",
3+
"version": "2.2.2",
44
"description": "Interactive CLI to scaffold and manage ProofKit projects",
55
"license": "MIT",
66
"repository": {
@@ -29,6 +29,8 @@
2929
},
3030
"files": [
3131
"bin/proofkit.cjs",
32+
"bin/proofkit-*",
33+
"bin/*.exe",
3234
"dist/**/*.js",
3335
"dist/**/*.d.ts",
3436
"template",
@@ -38,22 +40,22 @@
3840
"package.json"
3941
],
4042
"engines": {
41-
"node": "^22.0.0 || ^24.0.0 || ^26.0.0"
43+
"node": "^22.12.0 || ^24.0.0"
4244
},
4345
"scripts": {
44-
"typecheck": "node ./scripts/write-cli-version.mjs && tsc",
46+
"typecheck": "node ./scripts/write-cli-version.mjs && tsc --noEmit",
4547
"build": "node ./scripts/write-cli-version.mjs && NODE_ENV=production tsdown && publint --strict",
4648
"build:binaries": "node ./scripts/write-cli-version.mjs && node ./scripts/build-binaries.mjs",
4749
"prepublishOnly": "pnpm build && pnpm build:binaries",
4850
"dev": "tsdown --watch",
4951
"clean": "rm -rf dist .turbo node_modules bin/proofkit-* bin/*.exe",
5052
"start": "node dist/index.js",
51-
"lint": "biome check . --write",
52-
"lint:summary": "biome check . --reporter=summary",
53+
"lint": "cd ../.. && pnpm exec ultracite check packages/cli/src packages/cli/tests packages/cli/package.json packages/cli/tsconfig.json packages/cli/tsdown.config.ts packages/cli/vitest.config.ts",
54+
"lint:summary": "pnpm run lint",
5355
"release": "changeset version",
54-
"pub:beta": "NODE_ENV=production pnpm build && npm publish --tag beta --access public",
55-
"pub:next": "NODE_ENV=production pnpm build && npm publish --tag next --access public",
56-
"pub:release": "NODE_ENV=production pnpm build && npm publish --access public",
56+
"pub:beta": "NODE_ENV=production pnpm build && pnpm --package npm@^11 dlx npm publish --tag beta --access public",
57+
"pub:next": "NODE_ENV=production pnpm build && pnpm --package npm@^11 dlx npm publish --tag next --access public",
58+
"pub:release": "NODE_ENV=production pnpm build && pnpm --package npm@^11 dlx npm publish --access public",
5759
"test": "pnpm build && node ./scripts/build-current-binary.mjs && PROOFKIT_DISABLE_BUNDLED_BINARY=1 vitest run",
5860
"test:smoke": "PROOFKIT_RUN_SMOKE_TESTS=1 vitest run --config vitest.smoke.config.ts"
5961
},
@@ -67,8 +69,10 @@
6769
"@effect/printer": "0.48.0",
6870
"@effect/printer-ansi": "0.48.0",
6971
"@inquirer/prompts": "^8.3.2",
72+
"@proofkit/better-auth": "workspace:*",
7073
"@proofkit/fmdapi": "workspace:*",
7174
"@proofkit/typegen": "workspace:*",
75+
"@proofkit/webviewer": "workspace:*",
7276
"@types/glob": "^8.1.0",
7377
"axios": "^1.13.2",
7478
"chalk": "5.4.1",
@@ -93,7 +97,6 @@
9397
"type-fest": "^3.13.1",
9498
"@auth/drizzle-adapter": "^1.11.1",
9599
"@auth/prisma-adapter": "^1.6.0",
96-
"@biomejs/biome": "2.3.11",
97100
"@libsql/client": "^0.6.2",
98101
"@planetscale/database": "^1.19.0",
99102
"@prisma/adapter-planetscale": "^5.22.0",
@@ -127,7 +130,6 @@
127130
"tailwindcss": "^4.1.18",
128131
"tsdown": "^0.14.2",
129132
"typescript": "^5.9.3",
130-
"ultracite": "7.0.8",
131133
"vitest": "^4.0.17",
132134
"zod": "^4.3.5"
133135
},

0 commit comments

Comments
 (0)