@dbx-tools/cli 0.1.103
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 +88 -0
- package/dist/bin/dbxtools.d.ts +1 -0
- package/dist/bin/dbxtools.js +53 -0
- package/dist/index.d.ts +248 -0
- package/dist/index.js +3 -0
- package/dist/verify-CTCK1U-t.js +1490 -0
- package/package.json +41 -0
package/README.md
ADDED
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
# @dbx-tools/dbxtools
|
|
2
|
+
|
|
3
|
+
Scaffold, formatting, codegen, verification, build, and release helpers for Bun +
|
|
4
|
+
workspaces monorepos. It wraps the shared `tsdown` config for building and a
|
|
5
|
+
Bun-based publish flow; `dbxtools` keeps only the workspace automation that is
|
|
6
|
+
orthogonal to writing package code.
|
|
7
|
+
|
|
8
|
+
## Installation
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
bun add -d @dbx-tools/dbxtools
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
Then point your root `package.json` scripts at the `dbxtools` bin for the helper
|
|
15
|
+
commands you want:
|
|
16
|
+
|
|
17
|
+
```jsonc
|
|
18
|
+
{
|
|
19
|
+
"scripts": {
|
|
20
|
+
"format": "dbxtools format",
|
|
21
|
+
"build": "dbxtools build",
|
|
22
|
+
"codegen": "dbxtools codegen",
|
|
23
|
+
"verify": "dbxtools verify",
|
|
24
|
+
"create": "dbxtools create",
|
|
25
|
+
"release": "dbxtools release",
|
|
26
|
+
"tag": "dbxtools tag",
|
|
27
|
+
},
|
|
28
|
+
}
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Commands
|
|
32
|
+
|
|
33
|
+
| Command | What it does |
|
|
34
|
+
| ------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
|
|
35
|
+
| `dbxtools format` | `syncpack format`, regroup lifecycle hooks, then `prettier --write`. |
|
|
36
|
+
| `dbxtools build` | Compile every publishable package with the shared `tsdown` config. |
|
|
37
|
+
| `dbxtools codegen` | Regenerate each package's `generated/` zod tree from the `.d.ts` inputs its `package.json` declares. |
|
|
38
|
+
| `dbxtools verify` | Fail on imports of sibling packages not declared as dependencies. |
|
|
39
|
+
| `dbxtools create [--plugin\|--shared] <slug>` | Scaffold a new package under `packages/<slug>/`. |
|
|
40
|
+
| `dbxtools release [--dry-run]` | Build, then publish each package with a stamped (complete) manifest. |
|
|
41
|
+
| `dbxtools tag [patch\|minor\|major]` | Version bump, commit, tag, push, and create a GitHub Release. `--notes-since v0.1.75` widens the notes baseline; default is the previous tag. `--no-ai-notes` skips Codex release notes. |
|
|
42
|
+
| `dbxtools agent [prompt]` | Run `ucode codex exec` (`-t` / `--timeout` seconds). Prompt via args or stdin. Requires `ucode codex --version`. |
|
|
43
|
+
|
|
44
|
+
Typecheck stays a plain `tsc` call:
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
tsc --noEmit -p tsconfig.json
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Configuration
|
|
51
|
+
|
|
52
|
+
Configuration is optional. Everything is auto-derived from the workspace; the
|
|
53
|
+
only knobs live under a `dbxtools` key in the root `package.json`:
|
|
54
|
+
|
|
55
|
+
```jsonc
|
|
56
|
+
{
|
|
57
|
+
"dbxtools": {
|
|
58
|
+
"scope": "@acme", // npm scope used by `create` (default: most common scope in the workspace)
|
|
59
|
+
"repo": "acme/widgets", // owner/name for release links (default: the `origin` git remote)
|
|
60
|
+
},
|
|
61
|
+
}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
Each package's optional `codegen.inputs` field is read by convention.
|
|
65
|
+
|
|
66
|
+
## Library API
|
|
67
|
+
|
|
68
|
+
The same commands are exported as functions for projects that want to compose
|
|
69
|
+
their own automation:
|
|
70
|
+
|
|
71
|
+
```ts
|
|
72
|
+
import { build, codegen, create, release, tag, verify } from "@dbx-tools/dbxtools";
|
|
73
|
+
|
|
74
|
+
await build();
|
|
75
|
+
await codegen();
|
|
76
|
+
await verify();
|
|
77
|
+
await create({ slug: "example" });
|
|
78
|
+
await release({ dryRun: true });
|
|
79
|
+
await tag({ bump: "patch", publish: false });
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
Also exported: `format`, plus the workspace helpers
|
|
83
|
+
(`discoverPackages`, `discoverPackageJsons`, `writeJson`, `getProject`, `sh`,
|
|
84
|
+
`git`, ...).
|
|
85
|
+
|
|
86
|
+
## License
|
|
87
|
+
|
|
88
|
+
Apache-2.0
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { };
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
#!/usr/bin/env bun
|
|
2
|
+
import { C as codegen, S as build, b as resolveAgentPrompt, d as release, f as format, g as agent, l as notesSinceRequested, n as forwardedUpdateArgs, p as create, s as update, t as verify, u as tag } from "../verify-CTCK1U-t.js";
|
|
3
|
+
import { Command, InvalidArgumentError } from "commander";
|
|
4
|
+
|
|
5
|
+
//#region packages/cli/bin/dbxtools.ts
|
|
6
|
+
const program = new Command().name("dbxtools").description("Workspace build, scaffold, and release toolkit for Bun monorepos.");
|
|
7
|
+
program.command("format").description("syncpack format, regroup lifecycle hooks, then prettier --write.").action(format);
|
|
8
|
+
program.command("build").description("Compile every publishable package with the shared tsdown config.").action(build);
|
|
9
|
+
program.command("release").description("Build, then publish each package with a stamped (complete) manifest.").option("-n, --dry-run", "rehearse with `bun publish --dry-run`", false).action(async (opts) => {
|
|
10
|
+
await release({ dryRun: opts.dryRun });
|
|
11
|
+
});
|
|
12
|
+
program.command("codegen").description("Regenerate each package's `generated/` zod tree from its inputs.").action(codegen);
|
|
13
|
+
program.command("verify").description("Fail on imports of sibling packages not declared as dependencies.").action(verify);
|
|
14
|
+
program.command("update").description("Pin root catalog entries to latest stable versions, then bun update at the repo root.").allowUnknownOption().action(async () => {
|
|
15
|
+
await update(forwardedUpdateArgs());
|
|
16
|
+
});
|
|
17
|
+
program.command("create").description("Scaffold a new workspace package under packages/<slug>/.").argument("<slug>", "kebab-case slug (lowercase, starts with a letter)", (value) => {
|
|
18
|
+
if (!/^[a-z][a-z0-9-]*$/.test(value)) throw new InvalidArgumentError(`invalid slug "${value}"`);
|
|
19
|
+
return value;
|
|
20
|
+
}).option("--plugin", "scaffold an AppKit plugin package").option("--shared", "scaffold a browser-safe shared package").action(async (slug, opts) => {
|
|
21
|
+
await create({
|
|
22
|
+
slug,
|
|
23
|
+
plugin: opts.plugin,
|
|
24
|
+
shared: opts.shared
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
program.command("agent").description("Run ucode codex exec with assistant output.").argument("[prompt...]", "prompt text (or pipe via stdin when omitted)").option("-t, --timeout <seconds>", "wall-clock budget in seconds (default 300)", (value) => {
|
|
28
|
+
const seconds = Number(value);
|
|
29
|
+
if (!Number.isFinite(seconds) || seconds <= 0) throw new InvalidArgumentError("timeout must be a positive number");
|
|
30
|
+
return Math.round(seconds * 1e3);
|
|
31
|
+
}).action(async (promptParts, opts) => {
|
|
32
|
+
const code = await agent({
|
|
33
|
+
prompt: await resolveAgentPrompt(promptParts),
|
|
34
|
+
timeoutMs: opts.timeout
|
|
35
|
+
});
|
|
36
|
+
if (code !== 0) process.exit(code);
|
|
37
|
+
});
|
|
38
|
+
program.command("tag").description("Bump every workspace, commit, tag HEAD, and push to origin.").argument("[bump]", "version bump (patch | minor | major)", (value) => {
|
|
39
|
+
if (value !== "patch" && value !== "minor" && value !== "major") throw new InvalidArgumentError("expected patch, minor, or major");
|
|
40
|
+
return value;
|
|
41
|
+
}, "patch").option("--no-publish", "skip publishing the tagged versions to the local registry").option("-n, --dry-run", "print the plan and release-notes preview; write nothing, push nothing", false).option("--notes-since <tag>", "widen release-notes baseline to this tag (e.g. v0.1.75); default is the previous tag on HEAD").option("--no-ai-notes", "skip ucode codex; use commit-grouped notes only").action(async (bump, opts) => {
|
|
42
|
+
await tag({
|
|
43
|
+
bump,
|
|
44
|
+
dryRun: opts.dryRun,
|
|
45
|
+
publish: opts.publish,
|
|
46
|
+
aiNotes: opts.aiNotes,
|
|
47
|
+
...notesSinceRequested(opts.notesSince) ? { notesSince: opts.notesSince } : {}
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
await program.parseAsync(process.argv);
|
|
51
|
+
|
|
52
|
+
//#endregion
|
|
53
|
+
export { };
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
import { FileSystemProject, Workspace } from "pacwich";
|
|
2
|
+
|
|
3
|
+
//#region packages/cli/src/build.d.ts
|
|
4
|
+
/** Compile every publishable package with the shared tsdown config. */
|
|
5
|
+
declare function build(): Promise<void>;
|
|
6
|
+
//#endregion
|
|
7
|
+
//#region packages/cli/src/agent.d.ts
|
|
8
|
+
/**
|
|
9
|
+
* Run Codex headlessly via `ucode codex exec` for `dbxtools agent` and
|
|
10
|
+
* release tooling that drafts notes programmatically.
|
|
11
|
+
*/
|
|
12
|
+
/** Default wall-clock budget for a Codex invocation. */
|
|
13
|
+
declare const AGENT_DEFAULT_TIMEOUT_MS = 300000;
|
|
14
|
+
/** Options for {@link runAgent}. */
|
|
15
|
+
interface AgentOptions {
|
|
16
|
+
/** Wall-clock budget in milliseconds. */
|
|
17
|
+
timeoutMs?: number;
|
|
18
|
+
/** Working directory for the agent (defaults to `process.cwd()`). */
|
|
19
|
+
cwd?: string;
|
|
20
|
+
/**
|
|
21
|
+
* When `true` (default), capture stdout via `sh({ quiet: true })` for
|
|
22
|
+
* programmatic callers. When `false`, inherit stdio like
|
|
23
|
+
* `ucode codex exec …` in a shell.
|
|
24
|
+
*/
|
|
25
|
+
capture?: boolean;
|
|
26
|
+
/**
|
|
27
|
+
* When `true` (default) and `capture` is enabled, write the parsed
|
|
28
|
+
* assistant text to stdout. Set `false` when the caller will log the
|
|
29
|
+
* result itself (e.g. release-notes drafting).
|
|
30
|
+
*/
|
|
31
|
+
echo?: boolean;
|
|
32
|
+
}
|
|
33
|
+
/** Outcome of {@link runAgent}. */
|
|
34
|
+
interface AgentResult {
|
|
35
|
+
/** Trimmed assistant answer. */
|
|
36
|
+
text: string;
|
|
37
|
+
/** Subprocess exit code. */
|
|
38
|
+
exitCode: number;
|
|
39
|
+
/** Trimmed stderr. */
|
|
40
|
+
stderr: string;
|
|
41
|
+
}
|
|
42
|
+
/** Options for {@link agent}. */
|
|
43
|
+
interface AgentCommandOptions {
|
|
44
|
+
/** Prompt passed to `ucode codex exec`. */
|
|
45
|
+
prompt: string;
|
|
46
|
+
/** Wall-clock budget in milliseconds. */
|
|
47
|
+
timeoutMs?: number;
|
|
48
|
+
}
|
|
49
|
+
/** Whether `ucode codex --version` reports a usable Codex CLI. */
|
|
50
|
+
declare function agentAvailable(): Promise<boolean>;
|
|
51
|
+
/** Whether an exit code looks like the process was killed on a timeout. */
|
|
52
|
+
declare function agentTimedOut(exitCode: number): boolean;
|
|
53
|
+
/** Pull assistant prose out of `ucode codex exec` stdout. */
|
|
54
|
+
declare function parseCodexStdout(stdout: string): string;
|
|
55
|
+
/**
|
|
56
|
+
* Run `ucode codex exec` and return captured output. Throws when Codex
|
|
57
|
+
* is absent or the wall-clock budget is exceeded. On a non-zero exit
|
|
58
|
+
* the result is still returned so callers can use partial text.
|
|
59
|
+
*/
|
|
60
|
+
declare function runAgent(prompt: string, opts?: AgentOptions): Promise<AgentResult>;
|
|
61
|
+
/**
|
|
62
|
+
* `dbxtools agent` entry: run Codex and return a process exit code (0 on
|
|
63
|
+
* success, 1 on failure or timeout).
|
|
64
|
+
*/
|
|
65
|
+
declare function agent(opts: AgentCommandOptions): Promise<number>;
|
|
66
|
+
/** Join argv prompt parts, or read stdin when non-interactive and args are empty. */
|
|
67
|
+
declare function resolveAgentPrompt(promptParts: string[]): Promise<string>;
|
|
68
|
+
//#endregion
|
|
69
|
+
//#region packages/cli/src/codegen.d.ts
|
|
70
|
+
/** Regenerate the `generated/` tree for every package declaring a `codegen` field. */
|
|
71
|
+
declare function codegen(): Promise<void>;
|
|
72
|
+
//#endregion
|
|
73
|
+
//#region packages/cli/src/config.d.ts
|
|
74
|
+
/** Resolved toolkit configuration for the current repo. */
|
|
75
|
+
interface DbxtoolsConfig {
|
|
76
|
+
/** npm scope (e.g. `@acme`) used when scaffolding new packages. */
|
|
77
|
+
scope: string;
|
|
78
|
+
/** `owner/name` slug used for release links, or null when undiscoverable. */
|
|
79
|
+
repo: string | null;
|
|
80
|
+
/**
|
|
81
|
+
* Name of the shared-helpers package `create` wires as a dependency
|
|
82
|
+
* into new plugin / standard packages (when it exists in the
|
|
83
|
+
* workspace). Defaults to `<scope>/shared`, or null when no scope
|
|
84
|
+
* resolves.
|
|
85
|
+
*/
|
|
86
|
+
sharedPackage: string | null;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Resolve toolkit config for the current repo, memoized for the
|
|
90
|
+
* process. Overrides under the root `package.json` `dbxtools` key win
|
|
91
|
+
* over the auto-derived defaults.
|
|
92
|
+
*/
|
|
93
|
+
declare const getDbxtoolsConfig: () => Promise<DbxtoolsConfig>;
|
|
94
|
+
//#endregion
|
|
95
|
+
//#region packages/cli/src/create.d.ts
|
|
96
|
+
/** Options for {@link create}. */
|
|
97
|
+
interface CreateOptions {
|
|
98
|
+
/** kebab-case slug (lowercase, starts with a letter). */
|
|
99
|
+
slug: string;
|
|
100
|
+
/** Scaffold an AppKit plugin package. */
|
|
101
|
+
plugin?: boolean;
|
|
102
|
+
/** Scaffold a browser-safe shared package. */
|
|
103
|
+
shared?: boolean;
|
|
104
|
+
}
|
|
105
|
+
/** Scaffold a new workspace package under `packages/<slug>/`. */
|
|
106
|
+
declare function create(options: CreateOptions): Promise<void>;
|
|
107
|
+
//#endregion
|
|
108
|
+
//#region packages/cli/src/format.d.ts
|
|
109
|
+
/** syncpack + lifecycle-hook regroup + prettier across the workspace. */
|
|
110
|
+
declare function format(): Promise<void>;
|
|
111
|
+
//#endregion
|
|
112
|
+
//#region packages/cli/src/shell.d.ts
|
|
113
|
+
interface ShellResult {
|
|
114
|
+
exitCode: number;
|
|
115
|
+
stdout: string;
|
|
116
|
+
stderr: string;
|
|
117
|
+
}
|
|
118
|
+
interface ShellOptions {
|
|
119
|
+
/** Return the result on non-zero exit instead of throwing. */
|
|
120
|
+
nothrow?: boolean;
|
|
121
|
+
/** Working directory for the command. */
|
|
122
|
+
cwd?: string;
|
|
123
|
+
/** String piped to the command's stdin. */
|
|
124
|
+
input?: string;
|
|
125
|
+
/** Suppress the live echo. Output is still captured on the result. */
|
|
126
|
+
quiet?: boolean;
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* Run a command, streaming live unless `quiet`. Returns trimmed captured
|
|
130
|
+
* output regardless. Throws on non-zero unless `nothrow`.
|
|
131
|
+
*/
|
|
132
|
+
declare function sh(args: string[], opts?: ShellOptions): Promise<ShellResult>;
|
|
133
|
+
/** `bun x <args>` for one-off CLI tools (knip, syncpack, prettier, ...). */
|
|
134
|
+
declare function bunx(args: string[], opts?: ShellOptions): Promise<ShellResult>;
|
|
135
|
+
//#endregion
|
|
136
|
+
//#region packages/cli/src/git.d.ts
|
|
137
|
+
/**
|
|
138
|
+
* Run `git <args>`, returning trimmed output. Quiet by default since git is
|
|
139
|
+
* used mostly for its stdout (rev-parse, log, diff, ...); pass `quiet: false`
|
|
140
|
+
* to stream a mutating op live. Throws on non-zero unless `nothrow`.
|
|
141
|
+
*/
|
|
142
|
+
declare function git(args: string[], opts?: {
|
|
143
|
+
nothrow?: boolean;
|
|
144
|
+
quiet?: boolean;
|
|
145
|
+
cwd?: string;
|
|
146
|
+
}): Promise<ShellResult>;
|
|
147
|
+
//#endregion
|
|
148
|
+
//#region packages/cli/src/package.d.ts
|
|
149
|
+
/** Minimal package.json shape the commands care about. */
|
|
150
|
+
interface PackageJson {
|
|
151
|
+
name?: string;
|
|
152
|
+
version?: string;
|
|
153
|
+
private?: boolean;
|
|
154
|
+
workspaces?: string[];
|
|
155
|
+
[key: string]: unknown;
|
|
156
|
+
}
|
|
157
|
+
/** A workspace package: its parsed manifest, location, and dependency edges. */
|
|
158
|
+
declare class WorkspacePackage {
|
|
159
|
+
readonly meta: PackageJson;
|
|
160
|
+
readonly dir: string;
|
|
161
|
+
readonly slug: string;
|
|
162
|
+
readonly jsonPath: string;
|
|
163
|
+
private constructor();
|
|
164
|
+
/** Build from a pacwich {@link Workspace}, reading its manifest. */
|
|
165
|
+
static fromWorkspace(ws: Workspace): Promise<WorkspacePackage>;
|
|
166
|
+
}
|
|
167
|
+
/** Resolve `path` against the repo root. */
|
|
168
|
+
declare function toAbsolute(path: string): string;
|
|
169
|
+
/** Repo-relative form of `path`, or absolute when it sits outside the root. */
|
|
170
|
+
declare function toRelative(path: string): string;
|
|
171
|
+
/** Yield every workspace `package.json` path (`includeRoot` prepends the root manifest). */
|
|
172
|
+
declare function discoverPackageJsons(includeRoot?: boolean): AsyncIterableIterator<string>;
|
|
173
|
+
/** Workspace packages passing `filter` (default: non-private), sorted by slug. */
|
|
174
|
+
declare function discoverPackages(filter?: (pkg: WorkspacePackage) => boolean): Promise<WorkspacePackage[]>;
|
|
175
|
+
/** Write `value` as JSON, preserving the file's trailing newline to avoid format churn. */
|
|
176
|
+
declare function writeJson(path: string, value: unknown): Promise<void>;
|
|
177
|
+
//#endregion
|
|
178
|
+
//#region packages/cli/src/project.d.ts
|
|
179
|
+
declare const getProject: () => Promise<FileSystemProject>;
|
|
180
|
+
//#endregion
|
|
181
|
+
//#region packages/cli/src/release.d.ts
|
|
182
|
+
/** Options for {@link release}. */
|
|
183
|
+
interface ReleaseOptions {
|
|
184
|
+
/** Rehearse with `bun publish --dry-run` instead of publishing. */
|
|
185
|
+
dryRun?: boolean;
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Build every publishable package, then publish each with a stamped
|
|
189
|
+
* (complete) `package.json`, restoring the slim source manifest after
|
|
190
|
+
* each publish whether it succeeds or fails.
|
|
191
|
+
*/
|
|
192
|
+
declare function release(opts?: ReleaseOptions): Promise<void>;
|
|
193
|
+
//#endregion
|
|
194
|
+
//#region packages/cli/src/script.d.ts
|
|
195
|
+
/** Log `message` and exit non-zero. */
|
|
196
|
+
declare function fail(message: string): never;
|
|
197
|
+
/** Narrow an unknown thrown value to its message string. */
|
|
198
|
+
declare function errorMessage(err: unknown): string;
|
|
199
|
+
/** Split text on newlines, trimming each line and dropping blanks. */
|
|
200
|
+
declare function nonEmptyLines(text: string): string[];
|
|
201
|
+
//#endregion
|
|
202
|
+
//#region packages/cli/src/tag.d.ts
|
|
203
|
+
type Bump = "major" | "minor" | "patch";
|
|
204
|
+
/** Options for {@link tag}. */
|
|
205
|
+
interface TagOptions {
|
|
206
|
+
/** Version bump (defaults to `patch`). */
|
|
207
|
+
bump?: Bump;
|
|
208
|
+
/** Print everything, write nothing. */
|
|
209
|
+
dryRun?: boolean;
|
|
210
|
+
/** Publish the tagged versions to the local registry (default true). */
|
|
211
|
+
publish?: boolean;
|
|
212
|
+
/**
|
|
213
|
+
* When set, widen the release-notes baseline to this tag instead of
|
|
214
|
+
* the latest tag on `HEAD` (e.g. `v0.1.75` when several recent tags
|
|
215
|
+
* failed to publish). Omit to use the previous tag only.
|
|
216
|
+
*/
|
|
217
|
+
notesSince?: string;
|
|
218
|
+
/** When false, skip Codex and use commit-grouped notes only. */
|
|
219
|
+
aiNotes?: boolean;
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Version-bump every publishable workspace, commit, tag, push, create
|
|
223
|
+
* the GitHub Release (with generated notes), and publish to the local
|
|
224
|
+
* registry. See the file header for the full local-state policy.
|
|
225
|
+
*/
|
|
226
|
+
declare function tag(opts?: TagOptions): Promise<void>;
|
|
227
|
+
//#endregion
|
|
228
|
+
//#region packages/cli/src/update.d.ts
|
|
229
|
+
/** True when `version` is a release with no prerelease segment. */
|
|
230
|
+
declare function isStableVersion(version: string): boolean;
|
|
231
|
+
/** Highest stable version in `versions` that satisfies `range`. */
|
|
232
|
+
declare function latestStableInRange(versions: string[], range: string): string | null;
|
|
233
|
+
/** Rewrite a single range (or `latest`) to a caret pin on the latest stable match. */
|
|
234
|
+
declare function stableCaretRange(versions: string[], range: string): string;
|
|
235
|
+
/** Refresh every root `catalog` entry to the latest stable release in-range. */
|
|
236
|
+
declare function updateCatalog(): Promise<boolean>;
|
|
237
|
+
/** Run `bun update` with `forwardArgs` at the repo root. */
|
|
238
|
+
declare function runBunUpdate(forwardArgs: string[]): Promise<void>;
|
|
239
|
+
/** Refresh catalog pins, then `bun update` at the repo root. */
|
|
240
|
+
declare function update(forwardArgs?: string[]): Promise<void>;
|
|
241
|
+
/** Args after the `update` subcommand in `process.argv`. */
|
|
242
|
+
declare function forwardedUpdateArgs(argv?: string[]): string[];
|
|
243
|
+
//#endregion
|
|
244
|
+
//#region packages/cli/src/verify.d.ts
|
|
245
|
+
/** Fail when any workspace imports a sibling it doesn't declare as a dependency. */
|
|
246
|
+
declare function verify(): Promise<void>;
|
|
247
|
+
//#endregion
|
|
248
|
+
export { AGENT_DEFAULT_TIMEOUT_MS, type AgentCommandOptions, type AgentOptions, type AgentResult, type Bump, type CreateOptions, type DbxtoolsConfig, type PackageJson, type ReleaseOptions, type ShellResult, type TagOptions, WorkspacePackage, agent, agentAvailable, agentTimedOut, build, bunx, codegen, create, discoverPackageJsons, discoverPackages, errorMessage, fail, format, forwardedUpdateArgs, getDbxtoolsConfig, getProject, git, isStableVersion, latestStableInRange, nonEmptyLines, parseCodexStdout, release, resolveAgentPrompt, runAgent, runBunUpdate, sh, stableCaretRange, tag, toAbsolute, toRelative, update, updateCatalog, verify, writeJson };
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { A as git, C as codegen, D as toAbsolute, E as discoverPackages, F as nonEmptyLines, I as getProject, M as sh, N as errorMessage, O as toRelative, P as fail, S as build, T as discoverPackageJsons, _ as agentAvailable, a as runBunUpdate, b as resolveAgentPrompt, c as updateCatalog, d as release, f as format, g as agent, h as AGENT_DEFAULT_TIMEOUT_MS, i as latestStableInRange, j as bunx, k as writeJson, m as getDbxtoolsConfig, n as forwardedUpdateArgs, o as stableCaretRange, p as create, r as isStableVersion, s as update, t as verify, u as tag, v as agentTimedOut, w as WorkspacePackage, x as runAgent, y as parseCodexStdout } from "./verify-CTCK1U-t.js";
|
|
2
|
+
|
|
3
|
+
export { AGENT_DEFAULT_TIMEOUT_MS, WorkspacePackage, agent, agentAvailable, agentTimedOut, build, bunx, codegen, create, discoverPackageJsons, discoverPackages, errorMessage, fail, format, forwardedUpdateArgs, getDbxtoolsConfig, getProject, git, isStableVersion, latestStableInRange, nonEmptyLines, parseCodexStdout, release, resolveAgentPrompt, runAgent, runBunUpdate, sh, stableCaretRange, tag, toAbsolute, toRelative, update, updateCatalog, verify, writeJson };
|