@algolia/wizard 0.2.0 → 0.3.0-rc.44.2

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
@@ -1,6 +1,6 @@
1
1
  # @algolia/wizard
2
2
 
3
- A composable CLI that implements Algolia functionality directly in your codebase.
3
+ An Agent-driven CLI that implements Algolia functionality directly in your codebase.
4
4
 
5
5
  Wizard runs **workflows** — ordered sequences of steps that inspect your project, talk to Algolia APIs, and make AI-authored changes to your repo.
6
6
 
@@ -18,52 +18,6 @@ On first run, Wizard checks for an Algolia profile. If none exists it launches `
18
18
 
19
19
  You'll also be asked once to consent to AI-authored changes to the repository.
20
20
 
21
- ## Development
21
+ ## Contributing
22
22
 
23
- ### Requirements
24
-
25
- - Node 24+
26
- - PNPM
27
-
28
- ### Development Commands
29
-
30
- ```bash
31
- pnpm install
32
- pnpm dev # run from source via tsx
33
- pnpm test # vitest
34
- pnpm test:tools # run tool evals (tool-evals/); pass a spec name to run one, e.g. pnpm test:tools searchFiles
35
- pnpm typecheck # tsc --noEmit
36
- pnpm build # bundle to dist/main.js via esbuild
37
- ```
38
-
39
- ### Environment
40
-
41
- Create a `.env` with:
42
-
43
- ```
44
- PROVIDER_API_KEY=... # Algolia AI Enablers inference platform key
45
- ```
46
-
47
- #### Logging
48
-
49
- Logging is configured via environment variables (see [src/lib/logger.ts](src/lib/logger.ts)):
50
-
51
- | Variable | Default | Description |
52
- | ----------- | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------- |
53
- | `LOG_LEVEL` | `info` | Minimum pino level to emit: `trace`, `debug`, `info`, `warn`, `error`, `fatal`, `silent`. |
54
- | `WIZARD_LOG`| `~/.algolia/<project-slug>/wizard.log` | Log file destination |
55
-
56
- ## How it works
57
-
58
- - **Workflows** ([src/workflows/](src/workflows/)) — a `Workflow` is `{ id, title, description, steps[] }`. The registry lives in [src/workflows/index.ts](src/workflows/index.ts); the default is [src/workflows/default.ts](src/workflows/default.ts).
59
- - **Steps** ([src/core/orchestrator.ts](src/core/orchestrator.ts)) — each step has a Zod `outputSchema` and a `run(ctx)` function. Output is validated and persisted before the next step runs. The `StepContext` exposes prior step outputs, `requestUserInput`, `updateAlgoliaState`, and read-only config.
60
- - **State & resume** ([src/core/persistence.ts](src/core/persistence.ts), [src/core/config.ts](src/core/config.ts)) — run state and cross-workflow config live under `~/.algolia/<project-slug>/`, never in your repo's working tree. An interrupted workflow resumes from its last incomplete step.
61
- - **Auth** ([src/lib/algoliaProfile.ts](src/lib/algoliaProfile.ts)) — profiles are read from the Algolia CLI's `config.toml`; the default profile (or first configured) is used as the active one.
62
- - **AI** ([src/lib/agent.ts](src/lib/agent.ts)) — steps call the agent against the Algolia AI Enablers inference platform.
63
- - **UI** ([src/ui/](src/ui/)) — Ink/React components for steps, progress, prompts, and the concepts tutorial. State is held in a Zustand store ([src/core/store.ts](src/core/store.ts)).
64
-
65
- ### Adding a workflow
66
-
67
- 1. Define a `Workflow` with `defineStep(...)` calls (see [src/workflows/default.ts](src/workflows/default.ts)).
68
- 2. Register it in [src/workflows/index.ts](src/workflows/index.ts).
69
- 3. Run it: `npx @algolia/wizard <your-workflow-id>`.
23
+ Development setup, architecture notes, and release process live in [CONTRIBUTING.md](CONTRIBUTING.md).
package/dist/main.js CHANGED
@@ -2186,7 +2186,7 @@ async function runAnalysis(mode, extraInstructions = []) {
2186
2186
  // package.json
2187
2187
  var package_default = {
2188
2188
  name: "@algolia/wizard",
2189
- version: "0.2.0",
2189
+ version: "0.3.0-rc.44.2",
2190
2190
  description: "Magically implement Algolia functionality in your codebase",
2191
2191
  type: "module",
2192
2192
  engines: {
@@ -2200,8 +2200,8 @@ var package_default = {
2200
2200
  "docs"
2201
2201
  ],
2202
2202
  scripts: {
2203
- "build:proxy": `esbuild src/proxy/index.ts --bundle --platform=node --format=esm --target=node24 --banner:js='import { createRequire as __cr } from "module"; const require = __cr(import.meta.url);' --outfile=dist/proxy.mjs`,
2204
- build: "esbuild src/main.tsx --bundle --platform=node --format=esm --target=node18 --packages=external --jsx=automatic --banner:js='#!/usr/bin/env node' --outfile=dist/main.js && cp src/ui/algolia.png dist/algolia.png",
2203
+ "build:proxy": "node scripts/build.mjs proxy",
2204
+ build: "node scripts/build.mjs",
2205
2205
  "dev:proxy": "NODE_OPTIONS=--use-system-ca tsx watch src/proxy/index.ts",
2206
2206
  dev: "touch .env && tsx --env-file=.env ./src/main.tsx",
2207
2207
  "env:load": "pnpm exec -- varlock load",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@algolia/wizard",
3
- "version": "0.2.0",
3
+ "version": "0.3.0-rc.44.2",
4
4
  "description": "Magically implement Algolia functionality in your codebase",
5
5
  "type": "module",
6
6
  "engines": {
@@ -14,8 +14,8 @@
14
14
  "docs"
15
15
  ],
16
16
  "scripts": {
17
- "build:proxy": "esbuild src/proxy/index.ts --bundle --platform=node --format=esm --target=node24 --banner:js='import { createRequire as __cr } from \"module\"; const require = __cr(import.meta.url);' --outfile=dist/proxy.mjs",
18
- "build": "esbuild src/main.tsx --bundle --platform=node --format=esm --target=node18 --packages=external --jsx=automatic --banner:js='#!/usr/bin/env node' --outfile=dist/main.js && cp src/ui/algolia.png dist/algolia.png",
17
+ "build:proxy": "node scripts/build.mjs proxy",
18
+ "build": "node scripts/build.mjs",
19
19
  "dev:proxy": "NODE_OPTIONS=--use-system-ca tsx watch src/proxy/index.ts",
20
20
  "dev": "touch .env && tsx --env-file=.env ./src/main.tsx",
21
21
  "env:load": "pnpm exec -- varlock load",