@thinkingai/ae-cli 6.0.22 → 6.0.24

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 (94) hide show
  1. package/dist/{auth-RDN6D5HU.js → auth-A2XXG5K4.js} +7 -11
  2. package/dist/auth-IDPKDFSY.js +13 -0
  3. package/dist/{chunk-4EUZRJPO.js → chunk-2OW2RENH.js} +40 -10
  4. package/dist/{chunk-H52CSLJW.js → chunk-4FQ36OGO.js} +4 -4
  5. package/dist/chunk-AKORWVHJ.js +59 -0
  6. package/dist/{chunk-E34XH4GW.js → chunk-F3ZDMC2W.js} +8 -8
  7. package/dist/chunk-FIT4CFIN.js +59 -0
  8. package/dist/{chunk-2W7HULUD.js → chunk-IDXW6MEJ.js} +2 -2
  9. package/dist/{chunk-5FBLRSMU.js → chunk-NGJDCOYA.js} +3 -3
  10. package/dist/chunk-NXJP4CES.js +209 -0
  11. package/dist/{chunk-FPE5LGVU.js → chunk-OCQPQYHZ.js} +2 -2
  12. package/dist/{chunk-YACCPUNQ.js → chunk-ONOA6DYB.js} +1 -1
  13. package/dist/{chunk-U6QPKCN3.js → chunk-PFJFZVCK.js} +8 -115
  14. package/dist/chunk-V5R5UIRM.js +195 -0
  15. package/dist/{chunk-XE2PI5DS.js → chunk-WXBCP6SD.js} +1 -1
  16. package/dist/{cli-token-6AGEDJF4.js → cli-token-OZXHC3U2.js} +3 -3
  17. package/dist/{client-VTJMUZ4O.js → client-7L735LVY.js} +3 -3
  18. package/dist/{config-2SDTLGOC.js → config-SXD2JKSL.js} +3 -3
  19. package/dist/index.js +27 -24
  20. package/dist/{metadata-JZ2OTWBK.js → metadata-QWUAX625.js} +56 -65
  21. package/dist/metadata-XWTEGEN2.js +411 -0
  22. package/dist/{model-ZYMRN4VS.js → model-3OVX42DA.js} +2 -2
  23. package/dist/{raw-NGYHAL3F.js → raw-IANB4AV5.js} +4 -4
  24. package/dist/{sync-JVLX6TGW.js → sync-4HQ3CXSK.js} +3 -3
  25. package/dist/{te-agent-QPZTLHPH.js → te-agent-OYNNTJDU.js} +2 -2
  26. package/dist/{te-analysis-WWX3Z6RP.js → te-analysis-CRPFK3LX.js} +1074 -340
  27. package/dist/te-analysis-JX3V76OI.js +2281 -0
  28. package/dist/{te-audience-UXGHUVBB.js → te-audience-77FGNG5E.js} +5 -5
  29. package/dist/te-audience-RO2IZOUC.js +599 -0
  30. package/dist/{te-common-7XXH73MF.js → te-common-4TRJPRC5.js} +5 -5
  31. package/dist/te-common-PUXBUPOL.js +130 -0
  32. package/dist/{te-community-QKE67HR2.js → te-community-NPDZQKMY.js} +5 -5
  33. package/dist/te-community-XKE526DS.js +687 -0
  34. package/dist/{te-dataops-6W7NNYST.js → te-dataops-6KWLFNV4.js} +5 -5
  35. package/dist/te-dataops-PW74WP76.js +1842 -0
  36. package/dist/{te-engage-NCFAQFX3.js → te-engage-HTLMUN7G.js} +5 -5
  37. package/dist/te-engage-YPQIVF5H.js +1510 -0
  38. package/dist/{te-kb-K5BQYUCM.js → te-kb-DOGDQIU4.js} +4 -4
  39. package/dist/{te-meta-LJZBOSMO.js → te-meta-5ESSQ5B3.js} +5 -5
  40. package/dist/te-meta-Z47X4VT3.js +595 -0
  41. package/dist/{te-team-DHK5R7MV.js → te-team-SOVKZIDD.js} +5 -5
  42. package/package.json +1 -1
  43. package/skills/ae-analysis/SKILL.md +51 -25
  44. package/skills/ae-analysis/references/analysis_gateway_assets.md +114 -0
  45. package/skills/ae-analysis/references/bi_panel_copy.md +15 -0
  46. package/skills/ae-analysis/references/bi_panel_create.md +15 -0
  47. package/skills/ae-analysis/references/bi_panel_delete.md +15 -0
  48. package/skills/ae-analysis/references/bi_panel_get.md +18 -0
  49. package/skills/ae-analysis/references/bi_panel_list.md +15 -0
  50. package/skills/ae-analysis/references/bi_panel_page_data_export.md +15 -0
  51. package/skills/ae-analysis/references/bi_panel_page_data_run.md +15 -0
  52. package/skills/ae-analysis/references/bi_panel_share.md +15 -0
  53. package/skills/ae-analysis/references/bi_panel_update.md +15 -0
  54. package/skills/ae-analysis/references/dashboard_abnormal_get.md +15 -0
  55. package/skills/ae-analysis/references/dashboard_copy.md +15 -0
  56. package/skills/ae-analysis/references/dashboard_create.md +15 -0
  57. package/skills/ae-analysis/references/dashboard_daily_report_send.md +15 -0
  58. package/skills/ae-analysis/references/dashboard_daily_report_update.md +15 -0
  59. package/skills/ae-analysis/references/dashboard_definition_export.md +15 -0
  60. package/skills/ae-analysis/references/dashboard_definition_import.md +15 -0
  61. package/skills/ae-analysis/references/dashboard_delete.md +15 -0
  62. package/skills/ae-analysis/references/dashboard_freeze.md +15 -0
  63. package/skills/ae-analysis/references/dashboard_get.md +15 -0
  64. package/skills/ae-analysis/references/dashboard_handover.md +15 -0
  65. package/skills/ae-analysis/references/dashboard_list.md +15 -0
  66. package/skills/ae-analysis/references/dashboard_report_data_export.md +15 -0
  67. package/skills/ae-analysis/references/dashboard_report_data_run.md +15 -0
  68. package/skills/ae-analysis/references/dashboard_share.md +15 -0
  69. package/skills/ae-analysis/references/dashboard_share_info.md +15 -0
  70. package/skills/ae-analysis/references/dashboard_task_status.md +15 -0
  71. package/skills/ae-analysis/references/dashboard_update.md +16 -0
  72. package/skills/ae-analysis/references/favorite_add.md +15 -0
  73. package/skills/ae-analysis/references/favorite_remove.md +15 -0
  74. package/skills/ae-analysis/references/folder_create.md +15 -0
  75. package/skills/ae-analysis/references/folder_delete.md +15 -0
  76. package/skills/ae-analysis/references/folder_members.md +15 -0
  77. package/skills/ae-analysis/references/folder_share.md +15 -0
  78. package/skills/ae-analysis/references/project_space_create.md +15 -0
  79. package/skills/ae-analysis/references/project_space_delete.md +15 -0
  80. package/skills/ae-analysis/references/project_space_get.md +18 -0
  81. package/skills/ae-analysis/references/project_space_list.md +15 -0
  82. package/skills/ae-analysis/references/project_space_members.md +15 -0
  83. package/skills/ae-analysis/references/project_space_share.md +15 -0
  84. package/skills/ae-analysis/references/public_link_create.md +15 -0
  85. package/skills/ae-analysis/references/public_link_delete.md +15 -0
  86. package/skills/ae-analysis/references/public_link_list.md +15 -0
  87. package/skills/ae-analysis/references/public_link_offline.md +15 -0
  88. package/skills/ae-analysis/references/public_link_update.md +15 -0
  89. package/skills/ae-analysis/references/query_cancel.md +15 -0
  90. package/skills/ae-metadata/references/metadata_data_table_csv_write.md +5 -3
  91. package/skills/ae-metadata/references/metadata_data_table_sql_write.md +5 -4
  92. package/skills/ae-metadata/references/metadata_property_dimension_table_create_and_bind_csv.md +5 -3
  93. package/dist/auth-I2G7OAU2.js +0 -19
  94. package/dist/{chunk-WPXHCP4A.js → chunk-65DKFJZB.js} +3 -3
@@ -0,0 +1,15 @@
1
+ # analysis dashboard share
2
+
3
+ Use when the user explicitly wants to add, remove, or batch modify dashboard sharing.
4
+
5
+ Do not use to read sharing only. Use `dashboard share-info`.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis dashboard share --project-id <project_id> --dashboard-id <dashboard_id> [--member-authorities '{...}'] [--payload '{...}'] --yes
11
+ ```
12
+
13
+ Input sends `project_id`, `dashboard_id`, and either `member_authorities` or a backend-compatible snake_case `payload`.
14
+
15
+ Output is the gateway envelope. `data` contains the share update result.
@@ -0,0 +1,15 @@
1
+ # analysis dashboard share-info
2
+
3
+ Use when the user needs to inspect a dashboard's current sharing configuration.
4
+
5
+ Do not use to modify sharing. Use `dashboard share`.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis dashboard share-info --project-id <project_id> --dashboard-id <dashboard_id>
11
+ ```
12
+
13
+ Input sends `project_id` and `dashboard_id`.
14
+
15
+ Output is the gateway envelope. `data` contains dashboard sharing members and permissions.
@@ -0,0 +1,15 @@
1
+ # analysis dashboard task-status
2
+
3
+ Use when the user needs scheduled task status for a dashboard.
4
+
5
+ Do not use to update daily report configuration. Use `dashboard-daily-report update`.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis dashboard task-status --project-id <project_id> --dashboard-id <dashboard_id>
11
+ ```
12
+
13
+ Input sends `project_id` and `dashboard_id`.
14
+
15
+ Output is the gateway envelope. `data` contains scheduled task status.
@@ -0,0 +1,16 @@
1
+ # analysis dashboard update
2
+
3
+ Use when the user wants to update dashboard settings in batch or upsert a dashboard note.
4
+
5
+ Do not use for moving/copying dashboards. Use `dashboard copy`, `dashboard handover`, or the relevant project-space/folder command.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis dashboard update --project-id <project_id> --operation settings --dashboard-ids '[1001,1002]' [--zone-offset 8] [--payload '{...}'] --yes
11
+ ae-cli analysis dashboard update --project-id <project_id> --operation note-upsert --dashboard-id <dashboard_id> [--note-id <note_id>] [--note-title <title>] [--description <text>] --yes
12
+ ```
13
+
14
+ Input sends `project_id`, `operation`, optional dashboard identifiers, setting fields (including `zone_offset` as hours, e.g. `8` for UTC+8), note fields, and optional `payload`.
15
+
16
+ Output is the gateway envelope. `data` contains the update result.
@@ -0,0 +1,15 @@
1
+ # analysis favorite add
2
+
3
+ Use when the user wants to favorite one dashboard, BI panel, or folder.
4
+
5
+ Do not use for sharing or moving assets.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis favorite add --project-id <project_id> [--asset-id <id>] [--asset-type dashboard|bi_panel|folder] [--space-id <space_id>] [--id <backend_id>] [--payload '{...}'] --yes
11
+ ```
12
+
13
+ Input sends `project_id` and asset identity fields or backend-compatible `payload`.
14
+
15
+ Output is the gateway envelope. `data` contains the favorite result.
@@ -0,0 +1,15 @@
1
+ # analysis favorite remove
2
+
3
+ Use when the user wants to remove favorite from one dashboard, BI panel, or folder.
4
+
5
+ Do not use to delete the asset itself.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis favorite remove --project-id <project_id> [--asset-id <id>] [--asset-type dashboard|bi_panel|folder] [--space-id <space_id>] [--id <backend_id>] [--payload '{...}'] --yes
11
+ ```
12
+
13
+ Input sends `project_id` and asset identity fields or backend-compatible `payload`.
14
+
15
+ Output is the gateway envelope. `data` contains the remove-favorite result.
@@ -0,0 +1,15 @@
1
+ # analysis folder create
2
+
3
+ Use when the user explicitly wants to create a folder in personal space or a project space.
4
+
5
+ Do not use to create a project space. Use `project-space create`.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis folder create --project-id <project_id> --folder-name <name> [--space-id <space_id>] [--parent-folder-id <folder_id>] [--payload '{...}'] --yes
11
+ ```
12
+
13
+ Input sends `project_id`, `folder_name`, and optional `space_id`, `parent_folder_id`, `payload`.
14
+
15
+ Output is the gateway envelope. `data` contains the created folder result.
@@ -0,0 +1,15 @@
1
+ # analysis folder delete
2
+
3
+ Use when the user explicitly wants to delete one or more folders.
4
+
5
+ Do not use for deleting dashboards or BI panels inside a folder. Use the asset delete command.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis folder delete --project-id <project_id> [--folder-id <folder_id>] [--folder-ids '[1,2]'] [--space-id <space_id>] --yes
11
+ ```
12
+
13
+ Input sends `project_id`, either `folder_id` or `folder_ids`, and optional `space_id`.
14
+
15
+ Output is the gateway envelope. `data` contains the delete result.
@@ -0,0 +1,15 @@
1
+ # analysis folder members
2
+
3
+ Use when the user needs to inspect folder members.
4
+
5
+ Do not use to modify members. Use `folder share`.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis folder members --project-id <project_id> --folder-id <folder_id>
11
+ ```
12
+
13
+ Input sends `project_id` and `folder_id`.
14
+
15
+ Output is the gateway envelope. `data` contains folder members.
@@ -0,0 +1,15 @@
1
+ # analysis folder share
2
+
3
+ Use when the user wants to add, remove, or batch modify folder sharing members.
4
+
5
+ Do not use to inspect members only. Use `folder members`.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis folder share --project-id <project_id> --folder-id <folder_id> [--payload '{...}'] --yes
11
+ ```
12
+
13
+ Input sends `project_id`, `folder_id`, and backend-compatible snake_case `payload`.
14
+
15
+ Output is the gateway envelope. `data` contains the share update result.
@@ -0,0 +1,15 @@
1
+ # analysis project-space create
2
+
3
+ Use when the user explicitly wants to create a project space.
4
+
5
+ Do not use to create folders inside a space. Use `folder create`.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis project-space create --project-id <project_id> [--space-name <name>] [--space-desc <text>] [--avatar-type <type>] [--color-key <key>] [--avatar <value>] [--payload '{...}'] --yes
11
+ ```
12
+
13
+ Input sends `project_id` plus optional space metadata and `payload`.
14
+
15
+ Output is the gateway envelope. `data` contains the created project-space result.
@@ -0,0 +1,15 @@
1
+ # analysis project-space delete
2
+
3
+ Use when the user explicitly wants to delete one or more project spaces.
4
+
5
+ Do not use for removing dashboard or folder membership. Use the matching resource command.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis project-space delete --project-id <project_id> [--space-id <space_id>] [--space-ids '[1,2]'] --yes
11
+ ```
12
+
13
+ Input sends `project_id` and either `space_id` or `space_ids`.
14
+
15
+ Output is the gateway envelope. `data` contains the delete result.
@@ -0,0 +1,18 @@
1
+ # analysis project-space get
2
+
3
+ Use when the user needs one project space detail or name.
4
+
5
+ Do not use to list all spaces. Use `project-space list`.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis project-space get --project-id <project_id> --space-id <space_id> [--fields '["spaceId","spaceName"]']
11
+ ```
12
+
13
+ Input sends `project_id`, `space_id`, and optional `fields`.
14
+
15
+ Supported fields are `spaceId`, `spaceName`, `spaceDesc`, `avatarType`, `colorKey`, `avatar`,
16
+ `allAuthUserAuthority`, `createTime`, `updateTime`, and `owner`.
17
+
18
+ Output is the gateway envelope. `data` contains project-space detail with snake_case field names.
@@ -0,0 +1,15 @@
1
+ # analysis project-space list
2
+
3
+ Use when the user needs project spaces they can access.
4
+
5
+ Do not use for project lookup or project ID verification. Use `analysis_common +list_projects`.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis project-space list --project-id <project_id> [--query <keyword>] [--fields '["id","name"]'] [--limit 20] [--offset 0]
11
+ ```
12
+
13
+ Input sends `project_id` and optional `query`, `fields`, `limit`, `offset`.
14
+
15
+ Output is the gateway envelope. `data` contains project-space summaries.
@@ -0,0 +1,15 @@
1
+ # analysis project-space members
2
+
3
+ Use when the user needs to inspect project-space members.
4
+
5
+ Do not use to modify members. Use `project-space share`.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis project-space members --project-id <project_id> --space-id <space_id>
11
+ ```
12
+
13
+ Input sends `project_id` and `space_id`.
14
+
15
+ Output is the gateway envelope. `data` contains project-space members.
@@ -0,0 +1,15 @@
1
+ # analysis project-space share
2
+
3
+ Use when the user wants to add, remove, or batch modify project-space sharing members.
4
+
5
+ Do not use to inspect members only. Use `project-space members`.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis project-space share --project-id <project_id> --space-id <space_id> [--payload '{...}'] --yes
11
+ ```
12
+
13
+ Input sends `project_id`, `space_id`, and backend-compatible snake_case `payload`.
14
+
15
+ Output is the gateway envelope. `data` contains the share update result.
@@ -0,0 +1,15 @@
1
+ # analysis public-link create
2
+
3
+ Use when the user explicitly wants to generate a public link for a dashboard or BI panel.
4
+
5
+ Do not use for internal resource URLs. Use `analysis_common +get_resource_url` when applicable.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis public-link create --project-id <project_id> --resource-type dashboard --resource-id <id> --effective-at "2026-07-08 00:00:00" --expires-at "2026-08-08 00:00:00" [--access-controls '{...}'] [--remark <text>] [--company-id <company_id>] [--payload '{...}'] --yes
11
+ ```
12
+
13
+ Input sends `project_id`, `resource_type`, `resource_id`, `effective_at`, `expires_at`, and optional public-link fields.
14
+
15
+ Output is the gateway envelope. `data` contains the generated public-link result.
@@ -0,0 +1,15 @@
1
+ # analysis public-link delete
2
+
3
+ Use when the user explicitly wants to delete one or more public links.
4
+
5
+ Do not use to temporarily stop access while keeping records. Use `public-link offline`.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis public-link delete --project-id <project_id> [--link-id <link_id>] [--link-ids '[1,2]'] [--company-id <company_id>] --yes
11
+ ```
12
+
13
+ Input sends `project_id`, optional `company_id`, and either `link_id` or `link_ids`.
14
+
15
+ Output is the gateway envelope. `data` contains the delete result.
@@ -0,0 +1,15 @@
1
+ # analysis public-link list
2
+
3
+ Use when the user needs public links in a project.
4
+
5
+ Do not use for dashboard or BI panel asset listing. Use the matching list command.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis public-link list --project-id <project_id> [--query <keyword>] [--fields '["id","resource_id"]'] [--limit 20] [--offset 0]
11
+ ```
12
+
13
+ Input sends `project_id` and optional `query`, `fields`, `limit`, `offset`.
14
+
15
+ Output is the gateway envelope. `data` contains public-link summaries.
@@ -0,0 +1,15 @@
1
+ # analysis public-link offline
2
+
3
+ Use when the user wants to take one or more public links offline without deleting records.
4
+
5
+ Do not use to permanently delete links. Use `public-link delete`.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis public-link offline --project-id <project_id> [--link-id <link_id>] [--link-ids '[1,2]'] [--company-id <company_id>] --yes
11
+ ```
12
+
13
+ Input sends `project_id`, optional `company_id`, and either `link_id` or `link_ids`.
14
+
15
+ Output is the gateway envelope. `data` contains the offline result.
@@ -0,0 +1,15 @@
1
+ # analysis public-link update
2
+
3
+ Use when the user wants to edit an existing public link.
4
+
5
+ Do not use to take a link offline. Use `public-link offline`.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis public-link update --project-id <project_id> --link-id <link_id> --effective-at "2026-07-08 00:00:00" --expires-at "2026-08-08 00:00:00" [--access-controls '{...}'] [--remark <text>] [--company-id <company_id>] [--payload '{...}'] --yes
11
+ ```
12
+
13
+ Input sends `project_id`, `link_id`, effective/expiration time, and optional public-link fields.
14
+
15
+ Output is the gateway envelope. `data` contains the update result.
@@ -0,0 +1,15 @@
1
+ # analysis query cancel
2
+
3
+ Use to cancel an async capability-gateway query or export by `run_id`.
4
+
5
+ Do not use for MCP query cancellation by `request_id`; use `analysis +cancel_query`.
6
+
7
+ Command:
8
+
9
+ ```bash
10
+ ae-cli analysis query cancel --run-id <run_id> [--reason <reason>] --yes
11
+ ```
12
+
13
+ Input sends `run_id` and optional `reason`.
14
+
15
+ Output is the gateway envelope. `data` contains the cancellation result.
@@ -5,7 +5,7 @@
5
5
  ## Command
6
6
 
7
7
  ```bash
8
- ae-cli metadata data-table csv-write --project-id <project_id> --operation create --input-file-id <input_file_id> --data-table-name <name> --columns '<columns_json>' --yes
8
+ ae-cli metadata data-table csv-write --project-id <project_id> --operation create --input-file-id <input_file_id> --data-table-name datatable_<project_id>_<name> --columns '<columns_json>' --yes
9
9
  ae-cli metadata data-table csv-write --project-id <project_id> --operation incremental_update --data-table-id <id> --input-file-id <input_file_id> --yes
10
10
  ae-cli metadata data-table csv-write --project-id <project_id> --operation replace_update --data-table-id <id> --input-file-id <input_file_id> --yes
11
11
  ```
@@ -18,12 +18,14 @@ ae-cli metadata data-table csv-write --project-id <project_id> --operation repla
18
18
  | `--operation` | Yes | `create`, `incremental_update`, or `replace_update`. |
19
19
  | `--input-file-id` | Yes | ID returned by `metadata input-file upload`. |
20
20
  | `--data-table-id` | For updates | Existing data table ID. |
21
- | `--data-table-name` | For create | Technical data table name. |
21
+ | `--data-table-name` | No | Optional technical data table name. If supplied, use `datatable_<project_id>_<name>`. |
22
22
  | `--display-name` | No | Human-readable table name. |
23
23
  | `--description` | No | Table description. |
24
- | `--columns` | No | Column definitions JSON array. |
24
+ | `--columns` | No | Column definitions JSON array. Preferred fields are `column_name`, `select_type`, and `column_desc`; CLI also accepts `name`, `type`, and `display_name` aliases. |
25
25
 
26
26
  ## Decision Rules
27
27
 
28
28
  - Upload the CSV first with `metadata input-file upload --purpose data_table.csv`.
29
+ - Do not invent `input_file_id` or `data_table_id`; use upload/list outputs.
30
+ - If you provide `--data-table-name`, it must include the project segment, for example `datatable_2_orders`.
29
31
  - This is a write command; use `--dry-run` before non-dry-run and pass `--yes` when executing.
@@ -5,7 +5,7 @@
5
5
  ## Command
6
6
 
7
7
  ```bash
8
- ae-cli metadata data-table sql-write --project-id <project_id> --operation create --table-name <name> --columns '<columns_json>' --qp '<qp_json>' --strategy overwrite --yes
8
+ ae-cli metadata data-table sql-write --project-id <project_id> --operation create --table-name datatable_<project_id>_<name> --columns '<columns_json>' --qp '<qp_json>' --zone-offset 8 --strategy overwrite --yes
9
9
  ae-cli metadata data-table sql-write --project-id <project_id> --operation update --data-table-id <id> --columns '<columns_json>' --qp '<qp_json>' --yes
10
10
  ```
11
11
 
@@ -15,13 +15,13 @@ ae-cli metadata data-table sql-write --project-id <project_id> --operation updat
15
15
  |---|---|---|
16
16
  | `--project-id` / `-p` | Yes | Numeric project ID. |
17
17
  | `--operation` | Yes | `create` or `update`. |
18
- | `--columns` | Yes | Column definitions JSON array. |
18
+ | `--columns` | Yes | Column definitions JSON array. Preferred fields are `column_name`, `column_type`, and `column_desc`; CLI also accepts `name`, `type`, and `display_name` aliases. |
19
19
  | `--qp` | Yes | SQL data table query plan JSON. |
20
20
  | `--data-table-id` | For update | Existing data table ID. |
21
- | `--table-name` | For create | Technical table name. |
21
+ | `--table-name` | For create | Technical table name. Use `datatable_<project_id>_<name>`. |
22
22
  | `--display-name` | No | Human-readable name. |
23
23
  | `--remarks` | No | Table remarks. |
24
- | `--zone-offset` | No | Time zone offset such as `+08:00`. |
24
+ | `--zone-offset` | No | Time zone offset in hours. For example, UTC+8 is `8` and UTC-5 is `-5`. Valid range: -12 to 14. |
25
25
  | `--strategy` | No | `overwrite` or `insert`. |
26
26
  | `--update-cron` | No | Scheduled update cron. |
27
27
 
@@ -29,3 +29,4 @@ ae-cli metadata data-table sql-write --project-id <project_id> --operation updat
29
29
 
30
30
  - This is a write command; use `--dry-run` before non-dry-run and pass `--yes` when executing.
31
31
  - Keep `columns` and `qp` as valid JSON; do not pass raw SQL unless the server schema requires it inside `qp`.
32
+ - If you provide a table name, it must include the project segment, for example `datatable_2_orders_sql`.
@@ -5,7 +5,7 @@
5
5
  ## Command
6
6
 
7
7
  ```bash
8
- ae-cli metadata property create-and-bind-csv-dimension-table --project-id <project_id> --property-name <name> --property-scope user --input-file-id <input_file_id> --data-table-name <table_name> --columns '<columns_json>' --yes
8
+ ae-cli metadata property create-and-bind-csv-dimension-table --project-id <project_id> --property-name <name> --property-scope user --input-file-id <input_file_id> --data-table-name datatable_<project_id>_<name> --columns '<columns_json>' --yes
9
9
  ```
10
10
 
11
11
  ## Parameters
@@ -16,15 +16,17 @@ ae-cli metadata property create-and-bind-csv-dimension-table --project-id <proje
16
16
  | `--property-name` | Yes | Property technical name. |
17
17
  | `--property-scope` | Yes | Property owner table, for example `event` or `user`. |
18
18
  | `--input-file-id` | Yes | ID returned by `metadata input-file upload`. |
19
- | `--data-table-name` | No | Technical data table name. |
19
+ | `--data-table-name` | No | Optional technical data table name. If supplied, use `datatable_<project_id>_<name>`. |
20
20
  | `--display-name` | No | Human-readable table name. |
21
21
  | `--description` | No | Table description. |
22
- | `--columns` | No | Column definitions JSON array. |
22
+ | `--columns` | No | Column definitions JSON array. Preferred fields are `column_name`, `select_type`, and `column_desc`; CLI also accepts `name`, `type`, and `display_name` aliases. |
23
23
  | `--timestamp-join-format` | No | Timestamp join format. |
24
24
  | `--dict-columns` | No | Dictionary column names JSON array. |
25
25
 
26
26
  ## Decision Rules
27
27
 
28
28
  - Upload the CSV first with `metadata input-file upload --purpose data_table.csv`.
29
+ - Do not invent `input_file_id`; use the value returned by upload.
30
+ - If you provide `--data-table-name`, it must include the project segment, for example `datatable_2_user_dict`.
29
31
  - Use this one-step command when the user wants a new CSV dimension table bound to a property.
30
32
  - This is a write command; use `--dry-run` before non-dry-run and pass `--yes` when executing.
@@ -1,19 +0,0 @@
1
- import {
2
- clearToken,
3
- getAuthStatus,
4
- getToken,
5
- loadToken,
6
- resolveHost,
7
- saveToken,
8
- validateToken
9
- } from "./chunk-U6QPKCN3.js";
10
- import "./chunk-WPXHCP4A.js";
11
- export {
12
- clearToken,
13
- getAuthStatus,
14
- getToken,
15
- loadToken,
16
- resolveHost,
17
- saveToken,
18
- validateToken
19
- };
@@ -143,9 +143,6 @@ function readSandboxCliTokenEntry() {
143
143
  }
144
144
  return null;
145
145
  }
146
- function ensureDir() {
147
- if (!fs3.existsSync(CONFIG_DIR)) fs3.mkdirSync(CONFIG_DIR, { recursive: true });
148
- }
149
146
  function forceMigrateFromFallback() {
150
147
  const entry = readSandboxCliTokenEntry();
151
148
  if (!entry) return null;
@@ -159,6 +156,9 @@ function getFallbackCliToken(hostUrl) {
159
156
  if (entries.length === 1) return entries[0];
160
157
  return null;
161
158
  }
159
+ function ensureDir() {
160
+ if (!fs3.existsSync(CONFIG_DIR)) fs3.mkdirSync(CONFIG_DIR, { recursive: true });
161
+ }
162
162
  function loadConfig() {
163
163
  try {
164
164
  if (fs3.existsSync(CONFIG_FILE)) {