@bilig/workpaper 0.131.2 → 0.132.0

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.
Files changed (4) hide show
  1. package/README.md +25 -22
  2. package/SKILL.md +26 -19
  3. package/package.json +10 -13
  4. package/server.json +2 -2
package/README.md CHANGED
@@ -1,6 +1,7 @@
1
1
  # @bilig/workpaper
2
2
 
3
- Scoped Bilig WorkPaper runtime for Node.js services, agent tools, and server-side spreadsheet formulas.
3
+ WorkPaper API, CLI evaluator, and MCP server for headless spreadsheet formulas
4
+ in Node.js services and agents.
4
5
 
5
6
  Use this when business logic is easiest to review as workbook cells and
6
7
  formulas, but the calculation needs to run in a backend service, queue worker,
@@ -45,23 +46,24 @@ the closest runtime:
45
46
  These are integration guide names that users search for on npm. They are links,
46
47
  not the first-run path:
47
48
 
48
- | Guide need | Start here |
49
- | ----------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
50
- | Windmill TypeScript workflow fields | <https://proompteng.github.io/bilig/windmill-workpaper-script.html> |
51
- | Trigger.dev durable task fields | <https://proompteng.github.io/bilig/triggerdev-workpaper-task.html> |
52
- | Inngest durable step fields | <https://proompteng.github.io/bilig/inngest-workpaper-step.html> |
53
- | Temporal TypeScript Activity decisions | <https://proompteng.github.io/bilig/temporal-workpaper-activity.html> |
54
- | Apache Airflow DAG task outputs | <https://proompteng.github.io/bilig/airflow-workpaper-dag.html> |
55
- | Dagster asset materialization metadata | <https://proompteng.github.io/bilig/dagster-workpaper-asset.html> |
56
- | Kestra Node Commands flow fields | <https://proompteng.github.io/bilig/kestra-workpaper-flow.html> |
57
- | Prefect flow fields | <https://proompteng.github.io/bilig/prefect-workpaper-flow.html> |
58
- | Directus Flow operation for persisted calculated fields | <https://proompteng.github.io/bilig/directus-workpaper-flow-operation.html> |
59
- | n8n formula readback for self-hosted workflows | <https://proompteng.github.io/bilig/n8n-workpaper-formula-readback.html> |
60
- | Dify formula readback | <https://proompteng.github.io/bilig/dify-workpaper-formula-readback.html> |
61
- | Flowise formula readback | <https://proompteng.github.io/bilig/flowise-workpaper-formula-readback.html> |
62
- | Pipedream formula readback | <https://proompteng.github.io/bilig/pipedream-workpaper-formula-readback.html> |
63
- | FastMCP Python client for hosted MCP smoke tests | <https://proompteng.github.io/bilig/fastmcp-workpaper-client.html> |
64
- | Hugging Face smolagents tool | <https://proompteng.github.io/bilig/smolagents-workpaper-tool.html> |
49
+ | Guide need | Start here |
50
+ | ------------------------------------------------------- | ------------------------------------------------------------------------------ |
51
+ | Windmill TypeScript workflow fields | <https://proompteng.github.io/bilig/windmill-workpaper-script.html> |
52
+ | Trigger.dev durable task fields | <https://proompteng.github.io/bilig/triggerdev-workpaper-task.html> |
53
+ | Inngest durable step fields | <https://proompteng.github.io/bilig/inngest-workpaper-step.html> |
54
+ | Temporal TypeScript Activity decisions | <https://proompteng.github.io/bilig/temporal-workpaper-activity.html> |
55
+ | Apache Airflow DAG task outputs | <https://proompteng.github.io/bilig/airflow-workpaper-dag.html> |
56
+ | Dagster asset materialization metadata | <https://proompteng.github.io/bilig/dagster-workpaper-asset.html> |
57
+ | Kestra Node Commands flow fields | <https://proompteng.github.io/bilig/kestra-workpaper-flow.html> |
58
+ | Prefect flow fields | <https://proompteng.github.io/bilig/prefect-workpaper-flow.html> |
59
+ | Directus Flow operation for persisted calculated fields | <https://proompteng.github.io/bilig/directus-workpaper-flow-operation.html> |
60
+ | n8n formula readback for self-hosted workflows | <https://proompteng.github.io/bilig/n8n-workpaper-formula-readback.html> |
61
+ | Dify formula readback | <https://proompteng.github.io/bilig/dify-workpaper-formula-readback.html> |
62
+ | Flowise formula readback | <https://proompteng.github.io/bilig/flowise-workpaper-formula-readback.html> |
63
+ | Pipedream formula readback | <https://proompteng.github.io/bilig/pipedream-workpaper-formula-readback.html> |
64
+ | FastMCP Python client for hosted and local stdio checks | <https://proompteng.github.io/bilig/fastmcp-workpaper-client.html> |
65
+ | Hugging Face smolagents tool | <https://proompteng.github.io/bilig/smolagents-workpaper-tool.html> |
66
+ | Hugging Face Gradio MCP Space | <https://proompteng.github.io/bilig/huggingface-workpaper-space.html> |
65
67
 
66
68
  ## Use A WorkPaper In Node
67
69
 
@@ -196,12 +198,13 @@ instead:
196
198
  ```sh
197
199
  npx --yes skills@latest add https://bilig.proompteng.ai --list
198
200
  npx --yes skills@latest add proompteng/bilig --skill bilig-workpaper --list
199
- npm exec --package @bilig/workpaper@latest -- bilig-mcp-challenge --json
201
+ npm exec --yes --package @bilig/workpaper@latest -- bilig-evaluate --door agent-mcp --json
200
202
  ```
201
203
 
202
- The kit gives the agent one path: install the instructions, run the no-key MCP
203
- proof, paste a workbook edit task, and require computed readback plus persisted
204
- state before reporting success.
204
+ The kit gives the agent one path: install the instructions, run the no-key
205
+ agent evaluator, paste a workbook edit task, and require computed readback plus
206
+ persisted state before reporting success. Use `bilig-mcp-challenge --json` only
207
+ when debugging the lower-level MCP transcript.
205
208
 
206
209
  Docs: <https://proompteng.github.io/bilig/agent-adoption-kit.html>
207
210
 
package/SKILL.md CHANGED
@@ -32,6 +32,28 @@ Do not trigger it for manual spreadsheet editing, Office macros, VBA, pivots, ch
32
32
 
33
33
  Do not build shell commands by concatenating user text. Treat the commands below as literal templates, validate workbook paths before use, and reject values containing newlines, backticks, `$(`, `;`, `&`, `|`, `<`, or `>`. Prefer MCP client `command` plus `args` arrays or direct TypeScript calls when inserting user-provided paths or cell references.
34
34
 
35
+ ## First Check: Agent Evaluator
36
+
37
+ Before wiring a client, prove the published agent door with the package-owned evaluator.
38
+ It exercises MCP discovery, cell mutation, formula readback, JSON export, restart restore, and returns `verified: true`:
39
+
40
+ ```json
41
+ {
42
+ "command": "npm",
43
+ "args": ["exec", "--yes", "--package", "@bilig/workpaper@latest", "--", "bilig-evaluate", "--door", "agent-mcp", "--json"]
44
+ }
45
+ ```
46
+
47
+ For service-owned WorkPaper logic without MCP, run `bilig-evaluate --door workpaper-service --json`.
48
+ Use the lower-level challenge commands only when debugging the direct API loop or file-backed MCP JSON-RPC transcript:
49
+
50
+ ```json
51
+ [
52
+ { "command": "npm", "args": ["exec", "--package", "@bilig/workpaper@latest", "--", "bilig-agent-challenge", "--json"] },
53
+ { "command": "npm", "args": ["exec", "--package", "@bilig/workpaper@latest", "--", "bilig-mcp-challenge", "--json"] }
54
+ ]
55
+ ```
56
+
35
57
  ## First Choice: MCP
36
58
 
37
59
  Use MCP when the host can run a stdio server or call a Streamable HTTP server.
@@ -45,24 +67,6 @@ npx --yes skills@latest add https://bilig.proompteng.ai --list
45
67
  npx --yes skills@latest add proompteng/bilig --skill bilig-workpaper --list
46
68
  ```
47
69
 
48
- Before wiring a client, an agent can check the direct WorkPaper loop with:
49
-
50
- ```json
51
- {
52
- "command": "npm",
53
- "args": ["exec", "--package", "@bilig/workpaper@latest", "--", "bilig-agent-challenge", "--json"]
54
- }
55
- ```
56
-
57
- For the actual file-backed MCP path, run the package-owned challenge first:
58
-
59
- ```json
60
- {
61
- "command": "npm",
62
- "args": ["exec", "--package", "@bilig/workpaper@latest", "--", "bilig-mcp-challenge", "--json"]
63
- }
64
- ```
65
-
66
70
  ```json
67
71
  {
68
72
  "command": "npm",
@@ -80,13 +84,15 @@ For the actual file-backed MCP path, run the package-owned challenge first:
80
84
  }
81
85
  ```
82
86
 
83
- Run `bilig-mcp-challenge` and treat its returned `tools` array as the source
87
+ Run `bilig-evaluate --door agent-mcp --json` first. If the evaluator fails,
88
+ run `bilig-mcp-challenge` and treat its returned `tools` array as the source
84
89
  of truth for the currently published package. The core file-backed tools are:
85
90
 
86
91
  - `list_sheets`
87
92
  - `read_range`
88
93
  - `read_cell`
89
94
  - `set_cell_contents`
95
+ - `set_cell_contents_and_readback`
90
96
  - `get_cell_display_value`
91
97
  - `export_workpaper_document`
92
98
  - `validate_formula`
@@ -189,6 +195,7 @@ If any readback step fails, report the blocker instead of claiming the workbook
189
195
  - Sim MCP setup: https://proompteng.github.io/bilig/sim-workpaper-mcp.html
190
196
  - FastMCP Python client: https://proompteng.github.io/bilig/fastmcp-workpaper-client.html
191
197
  - smolagents WorkPaper tool: https://proompteng.github.io/bilig/smolagents-workpaper-tool.html
198
+ - Hugging Face WorkPaper Space template: https://proompteng.github.io/bilig/huggingface-workpaper-space.html
192
199
  - Windmill TypeScript script: https://proompteng.github.io/bilig/windmill-workpaper-script.html
193
200
  - Trigger.dev task: https://proompteng.github.io/bilig/triggerdev-workpaper-task.html
194
201
  - Inngest step: https://proompteng.github.io/bilig/inngest-workpaper-step.html
package/package.json CHANGED
@@ -1,35 +1,32 @@
1
1
  {
2
2
  "name": "@bilig/workpaper",
3
- "version": "0.131.2",
4
- "description": "Scoped Bilig WorkPaper runtime and MCP server for Node.js services, agent tools, and server-side spreadsheet formulas.",
3
+ "version": "0.132.0",
4
+ "description": "WorkPaper API, CLI evaluator, and MCP server for headless spreadsheet formulas in Node.js services and agents.",
5
5
  "keywords": [
6
6
  "agent-tools",
7
7
  "ai-agents",
8
8
  "bilig",
9
- "bilig-workpaper",
10
- "excel",
11
9
  "excel-formulas",
12
- "exceljs",
13
10
  "formula-engine",
14
- "formula-recalculation",
15
11
  "headless-spreadsheet",
16
12
  "mcp",
17
13
  "mcp-server",
18
14
  "model-context-protocol",
19
15
  "node",
16
+ "node-spreadsheet",
17
+ "node-spreadsheet-formulas",
18
+ "server-side-formula-engine",
20
19
  "server-side-spreadsheet",
21
- "sheetjs",
22
20
  "spreadsheet",
23
21
  "spreadsheet-agent",
24
22
  "spreadsheet-automation",
25
23
  "spreadsheet-engine",
24
+ "spreadsheet-formula-engine",
26
25
  "spreadsheet-formulas",
27
26
  "workbook",
28
27
  "workbook-agent",
29
- "workbook-api",
30
28
  "workpaper",
31
- "xlsx",
32
- "xlsx-calc"
29
+ "xlsx"
33
30
  ],
34
31
  "homepage": "https://proompteng.github.io/bilig/",
35
32
  "bugs": {
@@ -91,9 +88,9 @@
91
88
  "build": "pnpm --dir ../.. --filter bilig-workpaper build && rm -rf dist tsconfig.tsbuildinfo && tsc -p tsconfig.json"
92
89
  },
93
90
  "dependencies": {
94
- "@bilig/headless": "0.131.2",
95
- "@bilig/xlsx-formula-recalc": "0.131.2",
96
- "bilig-workpaper": "0.131.2"
91
+ "@bilig/headless": "0.132.0",
92
+ "@bilig/xlsx-formula-recalc": "0.132.0",
93
+ "bilig-workpaper": "0.132.0"
97
94
  },
98
95
  "devDependencies": {
99
96
  "ai": "6.0.182",
package/server.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "name": "io.github.proompteng/bilig-workpaper",
4
4
  "title": "Bilig WorkPaper",
5
5
  "description": "WorkPaper MCP tools, resources, and prompts for readback, edits, and JSON persistence.",
6
- "version": "0.131.2",
6
+ "version": "0.132.0",
7
7
  "repository": {
8
8
  "url": "https://github.com/proompteng/bilig",
9
9
  "source": "github"
@@ -18,7 +18,7 @@
18
18
  {
19
19
  "registryType": "npm",
20
20
  "identifier": "@bilig/workpaper",
21
- "version": "0.131.2",
21
+ "version": "0.132.0",
22
22
  "transport": {
23
23
  "type": "stdio"
24
24
  }