@josephyan/qingflow-cli 0.2.0-beta.71 → 0.2.0-beta.72
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 +2 -2
- package/package.json +1 -1
- package/pyproject.toml +1 -1
- package/src/qingflow_mcp/backend_client.py +1 -0
- package/src/qingflow_mcp/builder_facade/models.py +16 -8
- package/src/qingflow_mcp/builder_facade/service.py +183 -121
- package/src/qingflow_mcp/cli/commands/__init__.py +4 -1
- package/src/qingflow_mcp/cli/commands/builder.py +24 -64
- package/src/qingflow_mcp/cli/commands/chart.py +18 -0
- package/src/qingflow_mcp/cli/commands/portal.py +25 -0
- package/src/qingflow_mcp/cli/commands/view.py +18 -0
- package/src/qingflow_mcp/cli/context.py +3 -0
- package/src/qingflow_mcp/response_trim.py +211 -178
- package/src/qingflow_mcp/server_app_builder.py +18 -42
- package/src/qingflow_mcp/server_app_user.py +21 -1
- package/src/qingflow_mcp/tools/ai_builder_tools.py +165 -124
- package/src/qingflow_mcp/tools/app_tools.py +0 -4
- package/src/qingflow_mcp/tools/resource_read_tools.py +399 -0
package/README.md
CHANGED
|
@@ -3,13 +3,13 @@
|
|
|
3
3
|
Install:
|
|
4
4
|
|
|
5
5
|
```bash
|
|
6
|
-
npm install @josephyan/qingflow-cli@0.2.0-beta.
|
|
6
|
+
npm install @josephyan/qingflow-cli@0.2.0-beta.72
|
|
7
7
|
```
|
|
8
8
|
|
|
9
9
|
Run:
|
|
10
10
|
|
|
11
11
|
```bash
|
|
12
|
-
npx -y -p @josephyan/qingflow-cli@0.2.0-beta.
|
|
12
|
+
npx -y -p @josephyan/qingflow-cli@0.2.0-beta.72 qingflow
|
|
13
13
|
```
|
|
14
14
|
|
|
15
15
|
Environment:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@josephyan/qingflow-cli",
|
|
3
|
-
"version": "0.2.0-beta.
|
|
3
|
+
"version": "0.2.0-beta.72",
|
|
4
4
|
"description": "Human-friendly Qingflow command line interface for auth, record operations, import, tasks, and stable builder flows.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
package/pyproject.toml
CHANGED
|
@@ -1338,7 +1338,7 @@ class PortalApplyRequest(StrictModel):
|
|
|
1338
1338
|
FieldPatch.model_rebuild()
|
|
1339
1339
|
|
|
1340
1340
|
|
|
1341
|
-
class
|
|
1341
|
+
class AppGetResponse(StrictModel):
|
|
1342
1342
|
app_key: str
|
|
1343
1343
|
title: str | None = None
|
|
1344
1344
|
app_icon: str | None = None
|
|
@@ -1349,39 +1349,48 @@ class AppReadSummaryResponse(StrictModel):
|
|
|
1349
1349
|
view_count: int = 0
|
|
1350
1350
|
workflow_enabled: bool = False
|
|
1351
1351
|
verification_hints: list[str] = Field(default_factory=list)
|
|
1352
|
+
editability: dict[str, bool | None] = Field(default_factory=dict)
|
|
1352
1353
|
|
|
1353
1354
|
|
|
1354
|
-
class
|
|
1355
|
+
class AppGetFieldsResponse(StrictModel):
|
|
1355
1356
|
app_key: str
|
|
1356
1357
|
fields: list[dict[str, Any]] = Field(default_factory=list)
|
|
1357
1358
|
field_count: int = 0
|
|
1358
1359
|
|
|
1359
1360
|
|
|
1360
|
-
class
|
|
1361
|
+
class AppGetLayoutResponse(StrictModel):
|
|
1361
1362
|
app_key: str
|
|
1362
1363
|
sections: list[dict[str, Any]] = Field(default_factory=list)
|
|
1363
1364
|
unplaced_fields: list[str] = Field(default_factory=list)
|
|
1364
1365
|
layout_mode_detected: str = "empty"
|
|
1365
1366
|
|
|
1366
1367
|
|
|
1367
|
-
class
|
|
1368
|
+
class AppGetViewsResponse(StrictModel):
|
|
1368
1369
|
app_key: str
|
|
1369
1370
|
views: list[dict[str, Any]] = Field(default_factory=list)
|
|
1370
1371
|
|
|
1371
1372
|
|
|
1372
|
-
class
|
|
1373
|
+
class AppGetFlowResponse(StrictModel):
|
|
1373
1374
|
app_key: str
|
|
1374
1375
|
enabled: bool = False
|
|
1375
1376
|
nodes: list[dict[str, Any]] = Field(default_factory=list)
|
|
1376
1377
|
transitions: list[dict[str, Any]] = Field(default_factory=list)
|
|
1377
1378
|
|
|
1378
1379
|
|
|
1379
|
-
class
|
|
1380
|
+
class AppGetChartsResponse(StrictModel):
|
|
1380
1381
|
app_key: str
|
|
1381
1382
|
charts: list[dict[str, Any]] = Field(default_factory=list)
|
|
1382
1383
|
chart_count: int = 0
|
|
1383
1384
|
|
|
1384
1385
|
|
|
1386
|
+
AppReadSummaryResponse = AppGetResponse
|
|
1387
|
+
AppFieldsReadResponse = AppGetFieldsResponse
|
|
1388
|
+
AppLayoutReadResponse = AppGetLayoutResponse
|
|
1389
|
+
AppViewsReadResponse = AppGetViewsResponse
|
|
1390
|
+
AppFlowReadResponse = AppGetFlowResponse
|
|
1391
|
+
AppChartsReadResponse = AppGetChartsResponse
|
|
1392
|
+
|
|
1393
|
+
|
|
1385
1394
|
class PortalListResponse(StrictModel):
|
|
1386
1395
|
items: list[dict[str, Any]] = Field(default_factory=list)
|
|
1387
1396
|
total: int = 0
|
|
@@ -1415,7 +1424,7 @@ class PortalGetResponse(StrictModel):
|
|
|
1415
1424
|
|
|
1416
1425
|
|
|
1417
1426
|
class ViewGetResponse(StrictModel):
|
|
1418
|
-
|
|
1427
|
+
view_key: str
|
|
1419
1428
|
base_info: dict[str, Any] = Field(default_factory=dict)
|
|
1420
1429
|
config: dict[str, Any] = Field(default_factory=dict)
|
|
1421
1430
|
questions: list[dict[str, Any]] = Field(default_factory=list)
|
|
@@ -1426,7 +1435,6 @@ class ChartGetResponse(StrictModel):
|
|
|
1426
1435
|
chart_id: str
|
|
1427
1436
|
base: dict[str, Any] = Field(default_factory=dict)
|
|
1428
1437
|
config: dict[str, Any] = Field(default_factory=dict)
|
|
1429
|
-
data: dict[str, Any] = Field(default_factory=dict)
|
|
1430
1438
|
|
|
1431
1439
|
|
|
1432
1440
|
class SchemaPlanRequest(StrictModel):
|