@eigenpal/cli 0.20.26 → 0.20.28
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/CHANGELOG.md +12 -0
- package/dist/cli.js +740 -442
- package/dist/docs-bundle.json +37 -16
- package/dist/skill/SKILL.md +17 -0
- package/dist/skill/reference/cli/models.md +17 -3
- package/dist/skill/reference/cli/surface.md +2 -0
- package/dist/skill/reference/cli/workflow.md +21 -0
- package/dist/skill/reference/step-types.md +1442 -11
- package/dist/skill/reference/workflow-yaml.md +1 -0
- package/dist/templates/human-review-confidence-exception/workflow.yaml +1 -1
- package/dist/templates/human-review-explicit-critical/workflow.yaml +1 -1
- package/dist/templates/pdf-extraction/workflow.yaml +6 -8
- package/package.json +1 -1
package/dist/skill/SKILL.md
CHANGED
|
@@ -115,6 +115,23 @@ Use stable ids in scripts:
|
|
|
115
115
|
- Workflow dataset example id: `evx_...`
|
|
116
116
|
- Agent dataset example id: `aeg_...`
|
|
117
117
|
|
|
118
|
+
## Document Parsing
|
|
119
|
+
|
|
120
|
+
Use `ai.parse-v2` for new workflows. Start with only `input`: Eigenpal preserves native PDF text and recovers scanned/mixed pages through available, allowed OCR then vision. Text/Office parsing stays local. Do not add workflow-specific fallback branches.
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
For mixed spreadsheet date/identifier columns, use `ai.parse-v2` with `output.includeCellMetadata: true`, or `transform.xlsx-to-json` with `valueMode: displayed` and `includeCellMetadata: true`. V2 includes raw/displayed value, type, address, number format, workbook date system and optional date rendering in page evidence and text. JSON conversion puts evidence in `cellMetadata`, linked by `outputRowIndex` and `key`; pass the full output to the extraction LLM, not just `rows`. Recorded date formats control rendering; headers and numeric magnitude do not classify dates. Preserve ambiguous identifiers/strings and ask extraction to flag conflicting evidence. Never guess missing date formats or clean names during parsing. Conversion trims only implicit empty trailing extent; explicit ranges and real distant cells retain limits. Formulas use cached values and are never evaluated.
|
|
124
|
+
|
|
125
|
+
Before authoring, check the live server supports v2 with `eigenpal workflow step-type get ai.parse-v2`, then read `eigenpal docs read steps/ai/parse-v2`. Inspect `eigenpal models parser-readiness --json`; catalog readiness is not a live provider or worker-binary probe. Test native, scanned, and mixed inputs.
|
|
126
|
+
|
|
127
|
+
Figure enrichment is independently opt-in; it may call vision even with native-only text transcription. Leave enrichment disabled for fully local processing.
|
|
128
|
+
|
|
129
|
+
Configure `policy.native` (`prefer`, `require`, `skip`) and `policy.imageReading.order` only to express intentional restrictions/preferences. `providers.ocr` and `providers.vision` are exact pins. Deployment parsing defaults and provider boundaries apply; general text-generation defaults do not select the parser vision model.
|
|
130
|
+
|
|
131
|
+
Use `output.textFormat` for representation and `output.require` for required evidence. Vision cannot supply word coordinates. Native spatial whitespace requires plain text. Unresolved pages fail by default; if the user explicitly chooses `advanced.allowPartial`, inspect `completeness` before downstream extraction.
|
|
132
|
+
|
|
133
|
+
Legacy `ai.parse` remains supported. Never mix its flat `parseMode`/`nativeText` settings into v2. Migrate to a new file with `eigenpal workflow migrate-parser workflow.yaml --policy preserve --out workflow-v2.yaml` or `--policy auto` to adopt recommended defaults. Preserve mode retains OCR-only restrictions; automatic mode can broaden egress and costs. Review reported changes and representative outputs before publishing.
|
|
134
|
+
|
|
118
135
|
## Workflow Loop
|
|
119
136
|
|
|
120
137
|
```bash
|
|
@@ -8,12 +8,14 @@ Inspect models and providers configured for the current tenant environment (text
|
|
|
8
8
|
- [Commands](#commands)
|
|
9
9
|
- [Core](#core)
|
|
10
10
|
- [Details](#details)
|
|
11
|
+
- [`eigenpal models parser-readiness [options]`](#eigenpal-models-parser-readiness-options)
|
|
11
12
|
- [`eigenpal models list|ls [options]`](#eigenpal-models-listls-options)
|
|
12
13
|
|
|
13
14
|
## Surface
|
|
14
15
|
|
|
15
16
|
```
|
|
16
17
|
models
|
|
18
|
+
├── parser-readiness
|
|
17
19
|
└── list|ls
|
|
18
20
|
```
|
|
19
21
|
|
|
@@ -21,12 +23,24 @@ models
|
|
|
21
23
|
|
|
22
24
|
### Core
|
|
23
25
|
|
|
24
|
-
| Command
|
|
25
|
-
|
|
|
26
|
-
| `eigenpal models
|
|
26
|
+
| Command | Description |
|
|
27
|
+
| -------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
28
|
+
| `eigenpal models parser-readiness [options]` | Inspect deployment-approved ai.parse-v2 defaults. Catalog state only; document smoke tests are required for live readiness. |
|
|
29
|
+
| `eigenpal models list\|ls [options]` | List configured text, vision, and OCR models. This is a catalog inventory from the server, not a live provider health probe. `health` is `configured` or `unconfigured` from local credentials. Pair with `--json` for scripting. |
|
|
27
30
|
|
|
28
31
|
## Details
|
|
29
32
|
|
|
33
|
+
### `eigenpal models parser-readiness [options]`
|
|
34
|
+
|
|
35
|
+
Inspect deployment-approved ai.parse-v2 defaults. Catalog state only; document smoke tests are required for live readiness.
|
|
36
|
+
|
|
37
|
+
### Options
|
|
38
|
+
|
|
39
|
+
| Flag | Required | Default | Description |
|
|
40
|
+
| ------------------ | -------- | ------- | ------------------------------------ |
|
|
41
|
+
| `--base-url <url>` | no | | Server base URL |
|
|
42
|
+
| `--json` | no | | Emit machine-readable JSON on stdout |
|
|
43
|
+
|
|
30
44
|
### `eigenpal models list|ls [options]`
|
|
31
45
|
|
|
32
46
|
List configured text, vision, and OCR models. This is a catalog inventory from the server, not a live provider health probe. `health` is `configured` or `unconfigured` from local credentials. Pair with `--json` for scripting.
|
|
@@ -20,6 +20,7 @@ eigenpal
|
|
|
20
20
|
│ ├── push
|
|
21
21
|
│ ├── move <workflow-id>
|
|
22
22
|
│ ├── delete <workflow-id>
|
|
23
|
+
│ ├── migrate-parser <file>
|
|
23
24
|
│ ├── folders
|
|
24
25
|
│ │ ├── list|ls
|
|
25
26
|
│ │ ├── create <path>
|
|
@@ -139,6 +140,7 @@ eigenpal
|
|
|
139
140
|
│ └── env
|
|
140
141
|
│ └── pull [target]
|
|
141
142
|
├── models
|
|
143
|
+
│ ├── parser-readiness
|
|
142
144
|
│ └── list|ls
|
|
143
145
|
├── email-servers|email-server
|
|
144
146
|
│ ├── list|ls
|
|
@@ -23,6 +23,7 @@ Manage workflows: push, pull, and evaluate.
|
|
|
23
23
|
- [`eigenpal workflow push [options]`](#eigenpal-workflow-push-options)
|
|
24
24
|
- [`eigenpal workflow move [options] <workflow-id>`](#eigenpal-workflow-move-options-workflow-id)
|
|
25
25
|
- [`eigenpal workflow delete [options] <workflow-id>`](#eigenpal-workflow-delete-options-workflow-id)
|
|
26
|
+
- [`eigenpal workflow migrate-parser [options] <file>`](#eigenpal-workflow-migrate-parser-options-file)
|
|
26
27
|
- [`eigenpal workflow validate [options] [path]`](#eigenpal-workflow-validate-options-path)
|
|
27
28
|
- [`eigenpal workflow clear-local [options] [examples...]`](#eigenpal-workflow-clear-local-options-examples)
|
|
28
29
|
- [`eigenpal workflow folders list|ls [options]`](#eigenpal-workflow-folders-listls-options)
|
|
@@ -82,6 +83,7 @@ workflow
|
|
|
82
83
|
├── push
|
|
83
84
|
├── move <workflow-id>
|
|
84
85
|
├── delete <workflow-id>
|
|
86
|
+
├── migrate-parser <file>
|
|
85
87
|
├── folders
|
|
86
88
|
│ ├── list|ls
|
|
87
89
|
│ ├── create <path>
|
|
@@ -155,6 +157,7 @@ workflow
|
|
|
155
157
|
| `eigenpal workflow push [options]` | Create or update a workflow from a YAML file. |
|
|
156
158
|
| `eigenpal workflow move [options] <workflow-id>` | Move a workflow to a folder path, creating folders as needed |
|
|
157
159
|
| `eigenpal workflow delete [options] <workflow-id>` | Delete a workflow definition while preserving past runs. |
|
|
160
|
+
| `eigenpal workflow migrate-parser [options] <file>` | Write a reviewable ai.parse-v2 workflow migration to a new file. Never pushes or changes the source. |
|
|
158
161
|
| `eigenpal workflow validate [options] [path]` | Local-only validation. Without [path]: runs the templated three-way check (./workflow.yaml + ./evaluators.yaml + ./dataset/) in the project root. When the root has no workflow.yaml, discovers nested projects under eigenpal/workflows/<slug>/ or workflows/<slug>/ and validates each. With [path] pointing at a YAML file: validates that workflow.yaml only. For per-noun targeting use `evaluators validate` or `dataset validate`. |
|
|
159
162
|
| `eigenpal workflow clear-local [options] [examples...]` | Delete local execution artifacts under ./dataset/examples/. Keeps the latest run per example by default. |
|
|
160
163
|
|
|
@@ -352,6 +355,24 @@ Delete a workflow definition while preserving past runs.
|
|
|
352
355
|
| `--base-url <url>` | no | | Server base URL |
|
|
353
356
|
| `--json` | no | | Emit machine-readable JSON on stdout |
|
|
354
357
|
|
|
358
|
+
### `eigenpal workflow migrate-parser [options] <file>`
|
|
359
|
+
|
|
360
|
+
Write a reviewable ai.parse-v2 workflow migration to a new file. Never pushes or changes the source.
|
|
361
|
+
|
|
362
|
+
### Arguments
|
|
363
|
+
|
|
364
|
+
| Name | Required | Variadic | Description |
|
|
365
|
+
| ------ | -------- | -------- | ----------- |
|
|
366
|
+
| `file` | yes | no | |
|
|
367
|
+
|
|
368
|
+
### Options
|
|
369
|
+
|
|
370
|
+
| Flag | Required | Default | Description |
|
|
371
|
+
| ------------------- | -------- | ------- | ----------------------------------------------------------------------------------- |
|
|
372
|
+
| `--policy <policy>` | yes | | preserve backend restrictions, or auto to adopt automatic native/OCR/vision parsing |
|
|
373
|
+
| `--out <file>` | yes | | New YAML output file (must not already exist) |
|
|
374
|
+
| `--json` | no | | Emit migration summary as JSON |
|
|
375
|
+
|
|
355
376
|
### `eigenpal workflow validate [options] [path]`
|
|
356
377
|
|
|
357
378
|
Local-only validation. Without [path]: runs the templated three-way check (./workflow.yaml + ./evaluators.yaml + ./dataset/) in the project root. When the root has no workflow.yaml, discovers nested projects under eigenpal/workflows/<slug>/ or workflows/<slug>/ and validates each. With [path] pointing at a YAML file: validates that workflow.yaml only. For per-noun targeting use `evaluators validate` or `dataset validate`.
|