@thinkingai/ae-cli 6.1.24 → 6.1.26
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 +35 -10
- package/README.zh.md +32 -10
- package/bin/ae-cli.js +6 -1
- package/cli-installation-guide.md +91 -0
- package/dist/{auth-XZNXFRJS.js → auth-YHMC3GDH.js} +168 -10
- package/dist/automation-NWWVLWG2.js +459 -0
- package/dist/{capability-FYTU3X6L.js → capability-3QLLIVFB.js} +11 -6
- package/dist/chunk-4655PUNX.js +43 -0
- package/dist/{chunk-4NRCTUZJ.js → chunk-5XJYLEVC.js} +4 -4
- package/dist/{chunk-JOCDD4ON.js → chunk-7QXISROD.js} +1 -1
- package/dist/{chunk-EQ255HKO.js → chunk-AP7YP2NX.js} +2 -2
- package/dist/{chunk-DVMLWQD4.js → chunk-CT7QDJS6.js} +2 -2
- package/dist/chunk-D6ACFILC.js +56 -0
- package/dist/{chunk-HFGZGYCG.js → chunk-EOYSKMXN.js} +264 -10
- package/dist/{chunk-57RRFUEZ.js → chunk-FMNNGNYO.js} +43 -8
- package/dist/{chunk-7XGFSUOM.js → chunk-GIK6EDUG.js} +291 -84
- package/dist/chunk-HVHR4SCP.js +133 -0
- package/dist/{chunk-CCS66K4K.js → chunk-KAEHZZH4.js} +3 -3
- package/dist/{chunk-DX5CDO34.js → chunk-KFNMQTZI.js} +580 -214
- package/dist/{chunk-HBGADCKA.js → chunk-PLE722AJ.js} +28 -11
- package/dist/chunk-RK6GLDGI.js +27 -0
- package/dist/{chunk-V2NUHPXF.js → chunk-S6M42KND.js} +1 -1
- package/dist/{chunk-7FTTULED.js → chunk-UQ77JXYH.js} +7 -3
- package/dist/{chunk-MAPZ7VB6.js → chunk-WNGFSIOB.js} +20 -1
- package/dist/{chunk-VYXXOKYS.js → chunk-XCHAYMSF.js} +7 -4
- package/dist/{community-report-client-CU22W53K.js → community-report-client-PEERQCX2.js} +1 -1
- package/dist/{config-XO3LI3SA.js → config-AHPMEW5A.js} +25 -6
- package/dist/context-YAE3QXP3.js +136 -0
- package/dist/{data-integration-HNGUKFIC.js → data-integration-HESZET7E.js} +6 -6
- package/dist/index.js +167 -53
- package/dist/{local-data-upload-client-GTRIT64F.js → local-data-upload-client-TWMHFLUA.js} +1 -1
- package/dist/memory-62BJOULV.js +580 -0
- package/dist/{metadata-DI5BMYFU.js → metadata-C7CEDHOJ.js} +7 -7
- package/dist/{model-RNPQXIBI.js → model-SBV2JFJI.js} +9 -5
- package/dist/{personal-semantic-preference-5C3WUXFI.js → personal-semantic-preference-QECDPHND.js} +119 -11
- package/dist/project-semantic-Z4QAMBWF.js +356 -0
- package/dist/{sync-O45NXEQY.js → sync-SU33KYX7.js} +12 -8
- package/dist/{te-agent-K5MSPNHJ.js → te-agent-F5QBZSQA.js} +423 -494
- package/dist/{te-analysis-AISWCOOZ.js → te-analysis-2ECAAIFK.js} +1227 -154
- package/dist/{te-community-4OYU3BDA.js → te-community-PFLDLPP4.js} +3 -3
- package/dist/{te-dataops-NFIPB6FX.js → te-dataops-FOQSRIAZ.js} +644 -276
- package/dist/{te-engage-BAM3GBFX.js → te-engage-QKUGIWSR.js} +6 -6
- package/dist/{te-experiment-GUTZXZ5Z.js → te-experiment-26PXR2UO.js} +6 -6
- package/dist/{te-kb-3TS73NO6.js → te-kb-MHDOST62.js} +666 -244
- package/dist/{te-system-STMHLS5J.js → te-system-J2FQF5ER.js} +6 -6
- package/dist/{te-team-3I5AOX3N.js → te-team-5UOZPTU3.js} +6 -6
- package/dist/things-VPPXXLHB.js +1091 -0
- package/dist/{update-RZXLPCRH.js → update-EEUTEI6R.js} +59 -51
- package/dist/workspace-O3EEIYQM.js +554 -0
- package/package.json +30 -11
- package/skills/ae-agent/SKILL.md +95 -140
- package/skills/ae-agent/references/add-model.md +1 -1
- package/skills/ae-agent/references/create-agent.md +1 -1
- package/skills/ae-agent/references/find-archived-conversations.md +12 -5
- package/skills/ae-agent/references/get-agent.md +1 -1
- package/skills/ae-agent/references/list-agents.md +2 -2
- package/skills/ae-agent/references/list-models.md +2 -2
- package/skills/ae-agent/references/notification.md +40 -0
- package/skills/ae-agent/references/restore-conversation.md +3 -1
- package/skills/ae-analysis/SKILL.md +55 -23
- package/skills/ae-analysis/references/adhoc_export.md +1 -1
- package/skills/ae-analysis/references/adhoc_run.md +1 -1
- package/skills/ae-analysis/references/agent_review_submit_to_page.md +2 -0
- package/skills/ae-analysis/references/ai_models/event.md +6 -1
- package/skills/ae-analysis/references/ai_models/funnel.md +12 -4
- package/skills/ae-analysis/references/ai_models/heat_map.md +23 -0
- package/skills/ae-analysis/references/ai_models/interval.md +24 -0
- package/skills/ae-analysis/references/ai_models/path.md +20 -0
- package/skills/ae-analysis/references/ai_models/prop_analysis.md +2 -0
- package/skills/ae-analysis/references/ai_models/rank_list.md +30 -0
- package/skills/ae-analysis/references/ai_models/retention.md +45 -1
- package/skills/ae-analysis/references/ai_models/revenue.md +20 -2
- package/skills/ae-analysis/references/ai_models/session.md +76 -0
- package/skills/ae-analysis/references/ai_models/tag.md +2 -0
- package/skills/ae-analysis/references/ai_models.md +100 -3
- package/skills/ae-analysis/references/analysis_data_retrieval.md +4 -0
- package/skills/ae-analysis/references/analysis_drilldown_contract.md +4 -1
- package/skills/ae-analysis/references/asset_batch_info_export.md +10 -0
- package/skills/ae-analysis/references/asset_batch_sql_export.md +13 -1
- package/skills/ae-analysis/references/asset_export.md +12 -1
- package/skills/ae-analysis/references/asset_list.md +1 -0
- package/skills/ae-analysis/references/asset_search.md +11 -5
- package/skills/ae-analysis/references/bi_panel_list.md +1 -1
- package/skills/ae-analysis/references/catalog_list.md +1 -1
- package/skills/ae-analysis/references/collaboration.md +48 -0
- package/skills/ae-analysis/references/command_index.md +29 -19
- package/skills/ae-analysis/references/dashboard_list.md +4 -4
- package/skills/ae-analysis/references/dashboard_move.md +21 -0
- package/skills/ae-analysis/references/dashboard_report_add.md +2 -0
- package/skills/ae-analysis/references/dashboard_report_data_export.md +2 -0
- package/skills/ae-analysis/references/dashboard_report_get.md +19 -0
- package/skills/ae-analysis/references/dashboard_report_update.md +27 -0
- package/skills/ae-analysis/references/dashboard_update.md +1 -1
- package/skills/ae-analysis/references/drilldown_session_details_run.md +41 -0
- package/skills/ae-analysis/references/event_export.md +3 -1
- package/skills/ae-analysis/references/event_report_presentation.md +76 -0
- package/skills/ae-analysis/references/feedback_submit.md +37 -0
- package/skills/ae-analysis/references/governance_recommendation_auto_review.md +77 -0
- package/skills/ae-analysis/references/governance_recommendation_export.md +11 -0
- package/skills/ae-analysis/references/metadata_resolution.md +18 -3
- package/skills/ae-analysis/references/metric_export.md +3 -1
- package/skills/ae-analysis/references/metric_list.md +1 -1
- package/skills/ae-analysis/references/operation_record_export.md +10 -0
- package/skills/ae-analysis/references/personal_semantic_preference_add.md +2 -2
- package/skills/ae-analysis/references/personal_semantic_preference_get.md +4 -4
- package/skills/ae-analysis/references/personal_semantic_preference_list.md +4 -4
- package/skills/ae-analysis/references/personal_semantic_preference_review.md +9 -0
- package/skills/ae-analysis/references/personal_semantic_preference_review_list.md +7 -0
- package/skills/ae-analysis/references/personal_semantic_preference_submit.md +7 -0
- package/skills/ae-analysis/references/project_semantic_knowledge_wiki.md +91 -32
- package/skills/ae-analysis/references/project_semantic_knowledge_wiki_plan_schema.md +99 -1
- package/skills/ae-analysis/references/property_export.md +3 -1
- package/skills/ae-analysis/references/report_create.md +18 -4
- package/skills/ae-analysis/references/report_data_export.md +6 -0
- package/skills/ae-analysis/references/report_get.md +7 -1
- package/skills/ae-analysis/references/report_list.md +5 -5
- package/skills/ae-analysis/references/report_update.md +21 -4
- package/skills/ae-analysis/references/sql_table_columns.md +4 -4
- package/skills/ae-analysis/references/sql_table_list.md +5 -5
- package/skills/ae-analysis/references/system_query_monitor_overview.md +2 -0
- package/skills/ae-analysis/references/system_query_task_cancel.md +2 -0
- package/skills/ae-analysis/references/system_query_task_export.md +6 -2
- package/skills/ae-analysis/references/system_query_task_get.md +2 -0
- package/skills/ae-analysis/references/system_query_task_list.md +7 -3
- package/skills/ae-analysis/references/system_query_task_options.md +2 -2
- package/skills/ae-analysis/references/system_query_task_realtime_list.md +15 -0
- package/skills/ae-analysis/references/user_cluster_models.md +8 -0
- package/skills/ae-analysis/references/user_tag_create.md +7 -1
- package/skills/ae-analysis/references/user_tag_get.md +1 -1
- package/skills/ae-analysis/references/user_tag_models.md +20 -2
- package/skills/ae-analysis/references/user_tag_refresh.md +1 -1
- package/skills/ae-analysis/references/user_tag_update.md +2 -2
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/build-empty-skeleton.mjs +105 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/build-project-semantic-wiki.mjs +669 -29
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/company-kb.mjs +21 -8
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/default-compile-rules.md +28 -10
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/default-compile-schema.md +66 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/generate-build-ir.mjs +285 -24
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/package-wiki-source-zip.mjs +262 -30
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/plan-kb-source-sync.mjs +1 -1
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/precompiled-source.mjs +46 -2
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/prepare-compile-schema.mjs +64 -0
- package/skills/ae-analysis/scripts/project-semantic-knowledge-wiki/refresh-state-parts.mjs +91 -0
- package/skills/ae-automation/SKILL.md +16 -0
- package/skills/ae-automation/references/cli.md +53 -0
- package/skills/ae-automation/references/command_index.md +17 -0
- package/skills/ae-capability/SKILL.md +73 -2
- package/skills/ae-capability/references/collaboration.md +48 -0
- package/skills/ae-community/SKILL.md +5 -1
- package/skills/ae-community/references/collaboration.md +48 -0
- package/skills/ae-current-context/SKILL.md +3 -2
- package/skills/ae-data-integration/SKILL.md +4 -0
- package/skills/ae-data-integration/references/collaboration.md +48 -0
- package/skills/ae-dataops/SKILL.md +54 -74
- package/skills/ae-dataops/references/collaboration.md +48 -0
- package/skills/ae-dataops/references/dataops-backfill.md +23 -18
- package/skills/ae-dataops/references/dataops-flow-create.md +74 -23
- package/skills/ae-dataops/references/dataops-flow-monitor.md +45 -13
- package/skills/ae-dataops/references/dataops-integration.md +57 -30
- package/skills/ae-dataops/references/dataops-query.md +21 -4
- package/skills/ae-dataops/references/dataops-table.md +143 -11
- package/skills/ae-engage/SKILL.md +21 -6
- package/skills/ae-engage/references/channel-mgmt.md +3 -3
- package/skills/ae-engage/references/collaboration.md +48 -0
- package/skills/ae-engage/references/scene-config-channel.md +4 -4
- package/skills/ae-generate-tracking-plan/SKILL.md +4 -0
- package/skills/ae-generate-tracking-plan/references/collaboration.md +48 -0
- package/skills/ae-kb/SKILL.md +70 -12
- package/skills/ae-kb/references/analysis-workflow.md +73 -36
- package/skills/ae-kb/references/collaboration.md +48 -0
- package/skills/ae-kb/references/query-workflow.md +67 -33
- package/skills/ae-kb/references/schema-import.md +32 -0
- package/skills/ae-kb/references/source-mutations.md +6 -4
- package/skills/ae-kb/references/text-sources.md +53 -0
- package/skills/ae-kb-discovery/SKILL.md +8 -3
- package/skills/ae-kb-discovery/references/collaboration.md +48 -0
- package/skills/ae-metadata/SKILL.md +20 -12
- package/skills/ae-metadata/references/collaboration.md +48 -0
- package/skills/ae-team/SKILL.md +23 -17
- package/skills/ae-things/SKILL.md +85 -0
- package/skills/ae-things/references/cli.md +103 -0
- package/skills/ae-things-progress/SKILL.md +43 -0
- package/skills/ae-things-review/SKILL.md +42 -0
- package/skills/ae-workspace/SKILL.md +43 -0
- package/skills/ae-workspace/references/commands.md +51 -0
- package/dist/chunk-E2JKXMVO.js +0 -29
- package/dist/context-IFJI3LIT.js +0 -46
- package/dist/memory-QGPSNCQS.js +0 -892
- package/dist/project-semantic-3LF6Q6JZ.js +0 -1119
- package/skills/ae-agent/references/create-automation.md +0 -125
- package/skills/ae-agent/references/list-automations.md +0 -56
- package/skills/ae-agent/references/update-automation.md +0 -107
- package/skills/ae-project-semantic/SKILL.md +0 -193
- package/skills/ae-project-semantic/references/query-routing-v5.md +0 -165
- package/skills/ae-project-semantic/references/recommendation-quality.md +0 -68
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
# agent +create-automation (Create Automation)
|
|
2
|
-
|
|
3
|
-
> **Prerequisite:** Follow the Global AE CLI Rules in [`../SKILL.md`](../SKILL.md).
|
|
4
|
-
|
|
5
|
-
Domain: **Automations / write**
|
|
6
|
-
|
|
7
|
-
```text
|
|
8
|
-
Transition status: transitional
|
|
9
|
-
Owning module: te-claude automation
|
|
10
|
-
Current transport: POST /api/sandbox/agent/automations
|
|
11
|
-
Gateway target: TBD (no equivalent Gateway capability is currently registered)
|
|
12
|
-
Review after: 2026-10-07
|
|
13
|
-
Exit condition: Migrate when the Gateway exposes equivalent workspace-scoped automation creation.
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
## Use Cases
|
|
17
|
-
- Create an Agent automation task that runs on a schedule (hourly / daily / weekly / monthly or cron).
|
|
18
|
-
- Returns the newly created automation object including its `id` and initial `status`.
|
|
19
|
-
- Automations are **enabled by default**; pass `--enabled false` only when the user explicitly asks to create the task without enabling it.
|
|
20
|
-
- Automations create a new conversation for every run by default. Pass `--reuse-conversation true` only when the user explicitly wants future runs to continue in one conversation.
|
|
21
|
-
|
|
22
|
-
## Mandatory Rules (MUST)
|
|
23
|
-
- `--name` and `--message` are required.
|
|
24
|
-
- A schedule is required: provide either `--cron` or a `--schedule-kind` (with its time/day fields). `--cron` and `--schedule-kind` are mutually exclusive.
|
|
25
|
-
- `--agent-id` and `--agent-name` are mutually exclusive. Obtain a real Agent ID via `+list-agents` — do not guess.
|
|
26
|
-
- In a chat runtime, omitted `--conversation-id`, `--agent-id`, and `--model` values fall back to `TE_AGENT_CONVERSATION_ID`, `TE_AGENT_CURRENT_AGENT_ID`, and `TE_AGENT_CURRENT_MODEL_ID`. Explicit flags always take precedence; `--agent-name` intentionally suppresses the current Agent ID fallback.
|
|
27
|
-
- Workspace selection is independent of Agent selection: `--agent-space-id` explicitly selects the workspace. If omitted, the server inherits the accessible conversation's workspace when available, otherwise the personal default workspace. The CLI intentionally omits `agentSpaceId` in this case to preserve inheritance and compatibility with earlier servers.
|
|
28
|
-
- Workspace-aware servers return `automation.agentSpaceId`. Pass that ID to subsequent `+list-automations` and `+update-automation` calls; those commands otherwise use the personal default workspace, even when invoked from a conversation.
|
|
29
|
-
- On servers without workspace support, omit `--agent-space-id` and keep the original creation flow. If the response lacks `agentSpaceId`, omit the flag in later calls rather than inventing an ID. Older servers may ignore the new parameter; it does not add workspace isolation to them.
|
|
30
|
-
- This command creates Agent automations only. It does not create Agent Team scheduled tasks.
|
|
31
|
-
- JSON flags must be valid JSON strings, usually wrapped in single quotes in shell.
|
|
32
|
-
- This is an ordinary `write` operation and does not require CLI confirmation.
|
|
33
|
-
- Do not surface raw automation IDs, raw JSON, or concrete detail paths in user-facing replies.
|
|
34
|
-
|
|
35
|
-
## Schedule Kinds
|
|
36
|
-
| `--schedule-kind` | Required fields | Notes |
|
|
37
|
-
|---|---|---|
|
|
38
|
-
| `hourly` | `--minute` (optional, 0–59) | Runs every hour at the given minute |
|
|
39
|
-
| `daily` | `--time HH:mm` | Runs once a day at the given time |
|
|
40
|
-
| `weekly` | `--time HH:mm`, `--weekday 0-6` | `0` = Sunday |
|
|
41
|
-
| `monthly` | `--time HH:mm`, `--day-of-month 1-28` | Day 1–28 only |
|
|
42
|
-
|
|
43
|
-
## Command
|
|
44
|
-
```bash
|
|
45
|
-
# Enabled daily automation (default)
|
|
46
|
-
ae-cli agent +create-automation \
|
|
47
|
-
--name "Daily AI Brief" \
|
|
48
|
-
--schedule-kind daily \
|
|
49
|
-
--time 09:00 \
|
|
50
|
-
--message "Summarize yesterday's AI news"
|
|
51
|
-
|
|
52
|
-
# Create but keep paused when the user explicitly asks not to enable it
|
|
53
|
-
ae-cli agent +create-automation \
|
|
54
|
-
--name "Daily AI Brief" \
|
|
55
|
-
--schedule-kind daily \
|
|
56
|
-
--time 09:00 \
|
|
57
|
-
--message "Summarize yesterday's AI news" \
|
|
58
|
-
--enabled false
|
|
59
|
-
|
|
60
|
-
# Keep future runs in one visible conversation
|
|
61
|
-
ae-cli agent +create-automation \
|
|
62
|
-
--name "Daily AI Brief" \
|
|
63
|
-
--schedule-kind daily \
|
|
64
|
-
--time 09:00 \
|
|
65
|
-
--message "Summarize yesterday's AI news" \
|
|
66
|
-
--reuse-conversation true
|
|
67
|
-
|
|
68
|
-
# Weekly schedule on Sunday
|
|
69
|
-
ae-cli agent +create-automation \
|
|
70
|
-
--name "Weekly Report" \
|
|
71
|
-
--schedule-kind weekly \
|
|
72
|
-
--time 10:00 \
|
|
73
|
-
--weekday 0 \
|
|
74
|
-
--message "Generate the weekly report"
|
|
75
|
-
|
|
76
|
-
# Cron expression
|
|
77
|
-
ae-cli agent +create-automation \
|
|
78
|
-
--name "Cron Task" \
|
|
79
|
-
--cron "0 9 * * 1-5" \
|
|
80
|
-
--message "Weekday morning brief"
|
|
81
|
-
|
|
82
|
-
# Dry-run to inspect the request before executing
|
|
83
|
-
ae-cli agent +create-automation --dry-run --name "Test" --message "x" --schedule-kind daily --time 09:00
|
|
84
|
-
|
|
85
|
-
# Select a workspace explicitly
|
|
86
|
-
ae-cli agent +create-automation --name "Daily Report" --message "Prepare the report" \
|
|
87
|
-
--agent-id <agent-id> --agent-space-id <workspace-id> --schedule-kind daily --time 09:00
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
## Parameters
|
|
91
|
-
| Parameter | Required | Description |
|
|
92
|
-
|---|---|---|
|
|
93
|
-
| `--name` | Yes | Automation task name |
|
|
94
|
-
| `--message` | Yes | Instruction sent to the Agent |
|
|
95
|
-
| `--cron` | No* | Cron expression (mutually exclusive with `--schedule-kind`) |
|
|
96
|
-
| `--schedule-kind` | No* | `hourly` \| `daily` \| `weekly` \| `monthly` |
|
|
97
|
-
| `--time` | No | Time in `HH:mm` for daily/weekly/monthly |
|
|
98
|
-
| `--minute` | No | Minute 0–59 for hourly schedules |
|
|
99
|
-
| `--weekday` | No | Weekday 0–6 for weekly schedules; `0` is Sunday |
|
|
100
|
-
| `--day-of-month` | No | Day 1–28 for monthly schedules |
|
|
101
|
-
| `--agent-id` | No | Agent ID; defaults to current conversation Agent |
|
|
102
|
-
| `--agent-name` | No | Agent name; use only after `+list-agents` discovery |
|
|
103
|
-
| `--model` | No | Model record ID; defaults to current selected model |
|
|
104
|
-
| `--enabled` | No | `true` (default) \| `false` |
|
|
105
|
-
| `--reuse-conversation` | No | `true` to continue in one conversation; `false` (default) to create one per run |
|
|
106
|
-
| `--conversation-id` | No | Conversation ID fallback for resolving the Agent and workspace |
|
|
107
|
-
| `--agent-space-id` | No | Explicit workspace ID; omit to inherit the conversation's workspace, otherwise use the personal default workspace |
|
|
108
|
-
|
|
109
|
-
\* One of `--cron` or `--schedule-kind` is required.
|
|
110
|
-
|
|
111
|
-
## Decision Rules
|
|
112
|
-
- If the user provides a natural-language schedule ("every day at 9am"), translate it to `--schedule-kind daily --time 09:00`.
|
|
113
|
-
- If the user wants a cron-only schedule not covered by the kinds, use `--cron`.
|
|
114
|
-
- If no Agent is specified, the automation targets the current conversation's Agent; verify with `+list-agents` when in doubt.
|
|
115
|
-
- Set `--reuse-conversation true` only when the user explicitly requests continuity across runs. The platform may rotate the underlying provider session while retaining the visible conversation history.
|
|
116
|
-
- Use `--dry-run` first to verify the request shape before executing.
|
|
117
|
-
|
|
118
|
-
## Next Steps on Failure
|
|
119
|
-
- `必须提供 --cron 或 --schedule-kind`: provide one of the schedule flags.
|
|
120
|
-
- `--time 格式必须是 HH:mm`: use 24-hour `HH:mm` (e.g. `09:00`).
|
|
121
|
-
- `--agent-id 与 --agent-name 只能二选一`: pick one and remove the other.
|
|
122
|
-
- After success, capture the returned `automation.id` and, when present, `automation.agentSpaceId` for subsequent list/update calls. Omit the workspace flag when the ID is `null` or absent.
|
|
123
|
-
|
|
124
|
-
## Recommended Chaining
|
|
125
|
-
- `+list-agents` → `+create-automation` → `+list-automations` (verify) → `+update-automation` (edit)
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
# agent +list-automations (List Automations)
|
|
2
|
-
|
|
3
|
-
> **Prerequisite:** Follow the Global AE CLI Rules in [`../SKILL.md`](../SKILL.md).
|
|
4
|
-
|
|
5
|
-
Domain: **Automations / read**
|
|
6
|
-
|
|
7
|
-
```text
|
|
8
|
-
Transition status: transitional
|
|
9
|
-
Owning module: te-claude automation
|
|
10
|
-
Current transport: GET /api/sandbox/agent/automations
|
|
11
|
-
Gateway target: TBD (no equivalent Gateway capability is currently registered)
|
|
12
|
-
Review after: 2026-10-07
|
|
13
|
-
Exit condition: Migrate when the Gateway exposes equivalent workspace-scoped automation listing.
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
## Use Cases
|
|
17
|
-
- List the current user's Agent automation tasks in one workspace.
|
|
18
|
-
- Returns `items` containing automation summaries; key fields include `id`, `name`, `status`, `cronExpression`, `agentSpaceId`, and `agentSpaceName`.
|
|
19
|
-
- Agent Team scheduled tasks shown alongside automations in the workspace UI are a separate resource and are not returned by this command.
|
|
20
|
-
- Use this to discover a real automation ID before `+update-automation`.
|
|
21
|
-
|
|
22
|
-
## Mandatory Rules (MUST)
|
|
23
|
-
- Do not guess automation IDs. Always call `+list-automations` first when an automation ID is needed.
|
|
24
|
-
- Pass `--agent-space-id` for a non-default workspace. Omitting it lists the personal default workspace, including legacy tasks without a workspace ID; it does not list all workspaces or infer the current conversation's workspace.
|
|
25
|
-
- Keep the same workspace ID when calling `+update-automation`. An automation created from a conversation may belong to a non-default workspace; use the returned `automation.agentSpaceId` when verifying creation.
|
|
26
|
-
- On servers without workspace support, omit `--agent-space-id`. Listing retains its original user-scoped behavior and responses may lack `agentSpaceId`/`agentSpaceName`; neither field is required by the CLI. Older servers do not enforce the new workspace filter.
|
|
27
|
-
- Do not surface raw automation IDs, raw JSON, or concrete detail paths in user-facing replies — use the ID only internally for subsequent commands.
|
|
28
|
-
|
|
29
|
-
## Command
|
|
30
|
-
```bash
|
|
31
|
-
ae-cli agent +list-automations
|
|
32
|
-
ae-cli agent +list-automations --status active
|
|
33
|
-
ae-cli agent +list-automations --q "daily" --limit 20 --format table
|
|
34
|
-
ae-cli agent +list-automations --agent-space-id <workspace-id>
|
|
35
|
-
ae-cli agent +list-automations --dry-run
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
## Parameters
|
|
39
|
-
| Parameter | Required | Description |
|
|
40
|
-
|---|---|---|
|
|
41
|
-
| `--agent-space-id` | No | Workspace ID; omitted means the personal default workspace |
|
|
42
|
-
| `--q` | No | Keyword for automation name or instruction |
|
|
43
|
-
| `--status` | No | `active` \| `paused` |
|
|
44
|
-
| `--limit` | No | Maximum number of automations to return, 1–10000 |
|
|
45
|
-
|
|
46
|
-
## Decision Rules
|
|
47
|
-
- When the user wants to pause, resume, rename, or edit an automation, call this first to find the target ID.
|
|
48
|
-
- `--status active` lists only enabled automations; `--status paused` lists paused ones.
|
|
49
|
-
- If many automations are returned, summarize by `name` and `status` to help the user pick the right one.
|
|
50
|
-
|
|
51
|
-
## Next Steps on Failure
|
|
52
|
-
- Empty result: check the active AE host and workspace ID before concluding there are no automations. This command does not include Agent Team scheduled tasks.
|
|
53
|
-
- Auth error: run `ae-cli auth login`.
|
|
54
|
-
|
|
55
|
-
## Recommended Chaining
|
|
56
|
-
- `+list-automations` → confirm `id` → `+update-automation`
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
# agent +update-automation (Update Automation)
|
|
2
|
-
|
|
3
|
-
> **Prerequisite:** Follow the Global AE CLI Rules in [`../SKILL.md`](../SKILL.md).
|
|
4
|
-
|
|
5
|
-
Domain: **Automations / write**
|
|
6
|
-
|
|
7
|
-
```text
|
|
8
|
-
Transition status: transitional
|
|
9
|
-
Owning module: te-claude automation
|
|
10
|
-
Current transport: PATCH /api/sandbox/agent/automations/:id
|
|
11
|
-
Gateway target: TBD (no equivalent Gateway capability is currently registered)
|
|
12
|
-
Review after: 2026-10-07
|
|
13
|
-
Exit condition: Migrate when the Gateway exposes equivalent workspace-scoped automation updates.
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
## Use Cases
|
|
17
|
-
- Update an existing Agent automation task's name, instruction, schedule, enabled state, or conversation mode.
|
|
18
|
-
- Used to pause (`--enabled false`) or resume (`--enabled true`) an automation, or to change its schedule/message.
|
|
19
|
-
- Obtain the automation `id` via `+list-automations` — never guess.
|
|
20
|
-
|
|
21
|
-
## Mandatory Rules (MUST)
|
|
22
|
-
- `--id` is required. Obtain the real ID via `+list-automations` — do not guess.
|
|
23
|
-
- Pass the same `--agent-space-id` used to discover the task, or the `automation.agentSpaceId` returned by creation. Omitting it targets the personal default workspace, including legacy tasks with no workspace ID.
|
|
24
|
-
- The workspace ID is sent as a query parameter to select the task's existing workspace. It is not an update field and cannot move an automation between workspaces; providing it alone is not a valid update.
|
|
25
|
-
- On servers without workspace support, omit `--agent-space-id` and update by the original task ID. Missing workspace fields in older responses do not prevent updates; do not invent an ID or rely on older servers to enforce the new workspace query parameter.
|
|
26
|
-
- Agent Team scheduled task IDs are not automation IDs and cannot be used with this command.
|
|
27
|
-
- At least one update field must be provided (`--name`, `--message`, `--enabled`, `--reuse-conversation`, `--cron`, or a `--schedule-kind` with its time/day fields).
|
|
28
|
-
- `--cron` and `--schedule-kind` are mutually exclusive.
|
|
29
|
-
- This is an ordinary `write` operation and does not require CLI confirmation.
|
|
30
|
-
- Do not surface raw automation IDs, raw JSON, or concrete detail paths in user-facing replies.
|
|
31
|
-
|
|
32
|
-
## Schedule Kinds (when updating schedule)
|
|
33
|
-
| `--schedule-kind` | Required fields | Notes |
|
|
34
|
-
|---|---|---|
|
|
35
|
-
| `hourly` | `--minute` (optional, 0–59) | Runs every hour at the given minute |
|
|
36
|
-
| `daily` | `--time HH:mm` | Runs once a day at the given time |
|
|
37
|
-
| `weekly` | `--time HH:mm`, `--weekday 0-6` | `0` = Sunday |
|
|
38
|
-
| `monthly` | `--time HH:mm`, `--day-of-month 1-28` | Day 1–28 only |
|
|
39
|
-
|
|
40
|
-
## Command
|
|
41
|
-
```bash
|
|
42
|
-
# Pause an automation
|
|
43
|
-
ae-cli agent +update-automation --id <automation-id> --enabled false
|
|
44
|
-
|
|
45
|
-
# Pause an automation in a specific workspace
|
|
46
|
-
ae-cli agent +update-automation --id <automation-id> --agent-space-id <workspace-id> --enabled false
|
|
47
|
-
|
|
48
|
-
# Resume an automation
|
|
49
|
-
ae-cli agent +update-automation --id <automation-id> --enabled true
|
|
50
|
-
|
|
51
|
-
# Reuse the most recent valid conversation on future runs
|
|
52
|
-
ae-cli agent +update-automation --id <automation-id> --reuse-conversation true
|
|
53
|
-
|
|
54
|
-
# Return to creating a new conversation for every run
|
|
55
|
-
ae-cli agent +update-automation --id <automation-id> --reuse-conversation false
|
|
56
|
-
|
|
57
|
-
# Rename and change the instruction
|
|
58
|
-
ae-cli agent +update-automation \
|
|
59
|
-
--id <automation-id> \
|
|
60
|
-
--name "Daily AI Brief v2" \
|
|
61
|
-
--message "Summarize yesterday's AI news and trends"
|
|
62
|
-
|
|
63
|
-
# Change the schedule to weekly on Sunday
|
|
64
|
-
ae-cli agent +update-automation \
|
|
65
|
-
--id <automation-id> \
|
|
66
|
-
--schedule-kind weekly \
|
|
67
|
-
--time 10:00 \
|
|
68
|
-
--weekday 0
|
|
69
|
-
|
|
70
|
-
# Switch to a cron expression
|
|
71
|
-
ae-cli agent +update-automation --id <automation-id> --cron "0 9 * * 1-5"
|
|
72
|
-
|
|
73
|
-
# Dry-run to inspect the request before executing
|
|
74
|
-
ae-cli agent +update-automation --dry-run --id <automation-id> --enabled false
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
## Parameters
|
|
78
|
-
| Parameter | Required | Description |
|
|
79
|
-
|---|---|---|
|
|
80
|
-
| `--id` | Yes | Automation task ID from `+list-automations` |
|
|
81
|
-
| `--agent-space-id` | No | Existing workspace ID; omitted means the personal default workspace. Does not move the task |
|
|
82
|
-
| `--name` | No | New automation task name |
|
|
83
|
-
| `--message` | No | New instruction sent to the Agent |
|
|
84
|
-
| `--enabled` | No | `true` to enable, `false` to pause |
|
|
85
|
-
| `--reuse-conversation` | No | `true` to reuse one conversation, `false` to create one per run; omit to keep unchanged |
|
|
86
|
-
| `--cron` | No | Cron expression (mutually exclusive with `--schedule-kind`) |
|
|
87
|
-
| `--schedule-kind` | No | `hourly` \| `daily` \| `weekly` \| `monthly` |
|
|
88
|
-
| `--time` | No | Time in `HH:mm` for daily/weekly/monthly |
|
|
89
|
-
| `--minute` | No | Minute 0–59 for hourly schedules |
|
|
90
|
-
| `--weekday` | No | Weekday 0–6 for weekly schedules; `0` is Sunday |
|
|
91
|
-
| `--day-of-month` | No | Day 1–28 for monthly schedules |
|
|
92
|
-
|
|
93
|
-
## Decision Rules
|
|
94
|
-
- If the user wants to pause/resume, use `--enabled false` / `--enabled true` (no other fields needed).
|
|
95
|
-
- If the user wants future runs to share one conversation, use `--reuse-conversation true`; use `false` to restore one conversation per run.
|
|
96
|
-
- If the user wants to change the schedule, provide `--schedule-kind` with its required time/day fields, or `--cron`.
|
|
97
|
-
- At least one update field is required; a bare `--id` is rejected.
|
|
98
|
-
- Use `--dry-run` first to verify the request shape before executing.
|
|
99
|
-
|
|
100
|
-
## Next Steps on Failure
|
|
101
|
-
- `AUTOMATION_NOT_FOUND`: verify the task ID and workspace ID together. Do not retry across other workspaces automatically.
|
|
102
|
-
- `至少提供一个更新字段`: add at least one of `--name` / `--message` / `--enabled` / `--reuse-conversation` / `--cron` / `--schedule-kind`.
|
|
103
|
-
- `必须提供 --cron 或 --schedule-kind`: if schedule detail flags (`--time` / `--minute` / `--weekday` / `--day-of-month`) are present, a `--schedule-kind` (or `--cron`) must accompany them.
|
|
104
|
-
- `--time 格式必须是 HH:mm`: use 24-hour `HH:mm` (e.g. `09:00`).
|
|
105
|
-
|
|
106
|
-
## Recommended Chaining
|
|
107
|
-
- `+list-automations` → `+update-automation`
|
|
@@ -1,193 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ae-project-semantic
|
|
3
|
-
description: "Use when generating, testing, submitting, reviewing, or publishing governed project semantic candidates from AE project asset packages. This skill owns progressive asset-scope consent, recommendation quality gates, evidence authority, topic-domain grouping, candidate JSON generation, CLI closed-loop validation, and frontend review acceptance. Do not use it for ordinary analysis questions that only consume already published semantics."
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# ae-project-semantic
|
|
7
|
-
|
|
8
|
-
Project semantics are governed L2 project-wide business concepts, rules, calculation conventions, and default asset-selection methods. They sit above dashboards and reports. Dashboards, reports, events, properties, and metrics are L1 evidence and execution assets; they are not project semantics by themselves.
|
|
9
|
-
|
|
10
|
-
Use `ae-cli` only. Do not write the database directly for recommendations, approvals, or releases.
|
|
11
|
-
|
|
12
|
-
## Boundary
|
|
13
|
-
|
|
14
|
-
- Use this skill to generate or evaluate project semantic recommendations.
|
|
15
|
-
- Use `ae-analysis` to consume already published project semantics during analysis tasks.
|
|
16
|
-
- Frontend can review, edit, approve, reject, and publish candidates; it must not generate recommendations.
|
|
17
|
-
- Start with governed authenticated dashboards/reports. Broader project assets may be inspected only after explicit user consent and must retain their lower authority in evidence and confidence. Events, properties, metrics, background documents, and notes can provide supporting evidence only, never the primary L2 candidate subject.
|
|
18
|
-
|
|
19
|
-
## Required Workflow
|
|
20
|
-
|
|
21
|
-
1. Resolve the project and host.
|
|
22
|
-
2. Read both recommendation references before inspecting candidates:
|
|
23
|
-
- [`references/recommendation-quality.md`](references/recommendation-quality.md) for the governed L2 quality bar;
|
|
24
|
-
- [`references/query-routing-v5.md`](references/query-routing-v5.md) for the current query-routing, recall-shortcut, and analysis-playbook discovery protocol.
|
|
25
|
-
3. Check existing published project semantics:
|
|
26
|
-
|
|
27
|
-
```bash
|
|
28
|
-
ae-cli project-semantic list --project-id <project_id>
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
4. Export governed authenticated project assets and semantic snapshot context by default:
|
|
32
|
-
|
|
33
|
-
```bash
|
|
34
|
-
ae-cli project-semantic asset-package export --project-id <project_id> --asset-scope governed --output <tmp>/project-semantic-assets --force
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
When `--host` points directly to a locally started Common service instead of the deployed analysis gateway, scope the empty gateway domain to that command so the request uses Common's native `/api/cli/v1` route. Do not export this override globally:
|
|
38
|
-
|
|
39
|
-
```bash
|
|
40
|
-
AE_CLI_CAPABILITY_GATEWAY_DOMAIN= ae-cli project-semantic asset-package export --project-id <project_id> --asset-scope governed --output <tmp>/project-semantic-assets --force --host http://127.0.0.1:8992
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
5. Inspect `asset_scope`, `exported_asset_count`, `authenticated_asset_count`, `unauthenticated_asset_count`, `truncated`, work-unit count, and definition-family count before scanning. If `truncated=true`, warn that the package hit a compatibility limit. If the governed package is too sparse to support useful problem frames, report the actual counts and ask whether to re-export active collaborative assets. Do not broaden automatically:
|
|
44
|
-
|
|
45
|
-
```bash
|
|
46
|
-
ae-cli project-semantic asset-package export --project-id <project_id> --asset-scope collaborative --output <tmp>/project-semantic-assets --force
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
If that package is still too sparse, report its counts and ask separately whether to export all valid project dashboards/reports and their referenced metadata:
|
|
50
|
-
|
|
51
|
-
```bash
|
|
52
|
-
ae-cli project-semantic asset-package export --project-id <project_id> --asset-scope all_visible --output <tmp>/project-semantic-assets --force
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
`governed` is authenticated + collaborative + active in the recent 90-day window. `collaborative` removes only the authentication requirement. `all_visible` removes authentication, collaboration, and recency filters while still excluding deleted, frozen, hidden, offline, or otherwise invalid assets. Export is project-administrator-only; no per-user visibility filtering is required inside `all_visible`. Asset authentication is a separate governance write and must never be changed implicitly by scanning.
|
|
56
|
-
|
|
57
|
-
6. Read the package in this order:
|
|
58
|
-
- `manifest.json`, `.asset-package.json`, `catalog/published.jsonl`, `catalog/disabled.jsonl` when present, `catalog/active-candidates.jsonl`, and `catalog/rejected-candidates.jsonl` to build the exclusion and revision context;
|
|
59
|
-
- `indexes/work-units.jsonl` as the dashboard-first investigation queue, preserving its usage-priority order while rotating across distinct business themes;
|
|
60
|
-
- `indexes/definition-families.jsonl` and compact dashboard/report records to compare reusable definition variants;
|
|
61
|
-
- `indexes/asset-directory.jsonl` and `indexes/governance-coverage.jsonl` for supporting evidence;
|
|
62
|
-
- `details/normalized/**` only for candidate-bearing or conflicting families, and `details/raw/**` only when the normalized definition is insufficient.
|
|
63
|
-
|
|
64
|
-
The service owns deterministic parsing, key-field normalization, definition signatures, usage ordering, and catalog assembly. The Agent owns business topic discovery, evidence interpretation, counterexample review, and candidate wording. Display names, descriptions, and notes remain evidence for interpretation, but they never make two otherwise identical definitions distinct. Do not load every detail file into context up front or delegate business judgment to a project-specific keyword table or deterministic template generator.
|
|
65
|
-
|
|
66
|
-
7. Compare the proposed behavior against published, disabled, active-candidate, and rejected catalogs. Disabled semantics are suppression context: do not consume, recreate, or update them through recommendation generation. A project administrator can explicitly enable them later. Produce `CREATE` only for a genuinely new semantic, `UPDATE` when an active semantic needs a material revision, and no candidate when the package is already covered. Zero new candidates is a valid successful recommendation result.
|
|
67
|
-
|
|
68
|
-
8. Validate the Agent-authored file against the exact exported package. This command checks only deterministic contract rules such as required fields, supported enums, catalog conflicts, duplicate fingerprints, and resolvable evidence references. `passed=true` is not a semantic-quality approval:
|
|
69
|
-
|
|
70
|
-
```bash
|
|
71
|
-
ae-cli project-semantic candidate validate --asset-package <tmp>/project-semantic-assets --submit-file <tmp>/project-semantic-candidates.json
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
9. Perform a separate Agent quality-review pass over the unchanged candidate file and the evidence it cites. Apply the Hard Quality Bar and `references/recommendation-quality.md`; do not rely on the generation pass to approve its own wording. For every candidate, record `PASS`, `REVISE`, or `INSUFFICIENT_EVIDENCE` with concrete findings and evidence references. Revise and repeat both deterministic validation and Agent review until every submitted candidate is `PASS`. A successful empty recommendation is preferable to weak filler.
|
|
75
|
-
|
|
76
|
-
10. Submit the unchanged validated and Agent-reviewed file. Use `.asset-package.json.snapshot_hash`, or the `snapshot_hash` returned by `candidate validate`:
|
|
77
|
-
|
|
78
|
-
```bash
|
|
79
|
-
ae-cli project-semantic candidate submit --project-id <project_id> --submit-file <tmp>/project-semantic-candidates.json --snapshot-hash <snapshot_hash>
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
11. Review and enable through CLI when validating the full closed loop:
|
|
83
|
-
|
|
84
|
-
```bash
|
|
85
|
-
ae-cli project-semantic candidate list --project-id <project_id>
|
|
86
|
-
ae-cli project-semantic candidate get --project-id <project_id> --candidate-id <candidate_id>
|
|
87
|
-
ae-cli project-semantic candidate enable --project-id <project_id> --candidate-ids '["candidate_1"]'
|
|
88
|
-
ae-cli project-semantic get --project-id <project_id> --id <semantic_id> --mark-used
|
|
89
|
-
```
|
|
90
|
-
|
|
91
|
-
Lifecycle management is deliberately separate from recommendation review:
|
|
92
|
-
|
|
93
|
-
```bash
|
|
94
|
-
ae-cli project-semantic disable --project-id <project_id> --semantic-id <semantic_id> --expected-version <version> --reason <reason>
|
|
95
|
-
ae-cli project-semantic list --project-id <project_id> --status disabled
|
|
96
|
-
ae-cli project-semantic delete-impact --project-id <project_id> --semantic-id <semantic_id>
|
|
97
|
-
ae-cli project-semantic delete --project-id <project_id> --semantic-id <semantic_id> --expected-version <version> --reason <reason>
|
|
98
|
-
ae-cli project-semantic enable --project-id <project_id> --semantic-id <semantic_id> --expected-version <version> --reason <reason>
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
Disable means “do not consume and do not recommend again.” From disabled state, either enable the same semantic or inspect impact and physically delete it. Physical deletion means the semantic is absent and may be rediscovered by a future scan. Never delete merely to regenerate recommendations.
|
|
102
|
-
|
|
103
|
-
## Hard Quality Bar
|
|
104
|
-
|
|
105
|
-
A candidate file is not acceptable unless all of these are true:
|
|
106
|
-
|
|
107
|
-
- It starts from governed evidence, or records the explicitly approved broader scope and lowers confidence for claims that depend on unauthenticated assets.
|
|
108
|
-
- It groups by L2 business topic domain before generating candidates.
|
|
109
|
-
- Every topic group includes the submit-contract fields `topic_domain_key`, `topic_domain_title`, `topic_group_key`, and `topic_group_title`.
|
|
110
|
-
- It does not create one candidate per asset.
|
|
111
|
-
- It does not promote an event/property/metric name into a project semantic title.
|
|
112
|
-
- Each candidate binds `resource_refs` with real asset names/types/ids or names from the package.
|
|
113
|
-
- Each candidate explains what it means, where it applies, how to use it, and what it excludes.
|
|
114
|
-
- Each candidate body covers business definition, applicable questions, decision or calculation rules, Agent usage, and boundaries or exceptions in the project's natural language. Exact headings are not a machine contract.
|
|
115
|
-
- The concrete business judgment belongs in the decision or calculation content; asset names and counts belong in `resource_refs`, `evidence`, and `recommendation_reason`, not in the semantic body.
|
|
116
|
-
- A batch fails review when candidates reuse the same body with only asset names or counts changed.
|
|
117
|
-
- Each candidate includes evidence excerpts or source titles that show why it was recommended.
|
|
118
|
-
- Each candidate changes how the Agent interprets a business question, selects default assets, or applies a project-wide rule.
|
|
119
|
-
- Each candidate declares one of the evidence-backed recommendation kinds in `query-routing-v5.md`: `QUERY_ROUTING`, `RECALL_SHORTCUT`, or `ANALYSIS_PLAYBOOK`.
|
|
120
|
-
- A formula, threshold, state, event, property, report, or asset name is supporting L1 evidence, never a standalone candidate.
|
|
121
|
-
- A route must contain a meaningful asset-choice branch; a shortcut must contain a minimal bundle plus stop and fallback; a playbook must be note-backed or explicitly labeled as a structure-inferred recommended path.
|
|
122
|
-
- Existing published and disabled semantics are checked before submission; disabled semantics suppress recreation.
|
|
123
|
-
- An unauthenticated asset may support a route, shortcut, or playbook only when definitions, work-unit structure, usage, or notes provide corroboration. Never present it as a certified project rule solely because it was exported.
|
|
124
|
-
- Sparse evidence is either skipped or marked lower confidence; do not inflate weak recommendations.
|
|
125
|
-
|
|
126
|
-
## Generic Extraction Protocol
|
|
127
|
-
|
|
128
|
-
The protocol must work unchanged for games, retail, finance, SaaS, operations, and unknown project domains.
|
|
129
|
-
|
|
130
|
-
1. Inventory evidence without deciding themes. Separate authenticated and unauthenticated dashboards/reports, record the export scope and selection reason, and keep existing governed semantics and supporting L1 metadata distinct.
|
|
131
|
-
2. Discover semantic families only from evidence that was actually read. Use these cross-domain dimensions as questions, not as prefilled answers:
|
|
132
|
-
- business object, state, and alias;
|
|
133
|
-
- analysis subject and deduplication grain;
|
|
134
|
-
- measure, aggregation, numerator, denominator, and transformation;
|
|
135
|
-
- inclusion, exclusion, and filter scope;
|
|
136
|
-
- query range, cohort window, observation window, and freshness;
|
|
137
|
-
- unit, currency, normalization, and attribution;
|
|
138
|
-
- default asset selection and relationships between assets;
|
|
139
|
-
- applicability, exception, and conflict boundaries.
|
|
140
|
-
3. Compare definition variants inside each family. A candidate may state a default only when evidence shows one authoritative variant. Conflicting variants require a disambiguation rule or a warning, not an invented standard.
|
|
141
|
-
4. Form a topic domain after the semantic families are understood. The domain title must come from the project's natural business language and explain why its candidates are reviewed together.
|
|
142
|
-
5. Generate a candidate only when removing it would make a future Agent more likely to choose the wrong business object, asset, grain, formula, scope, unit, window, or exception.
|
|
143
|
-
6. For every claim in the body, identify direct supporting evidence. Keep asset names and excerpts in `resource_refs`, `evidence`, and `recommendation_reason`; keep reusable business knowledge in `content`.
|
|
144
|
-
7. Compare candidates by resulting Agent behavior. Merge candidates that lead to the same interpretation and execution; split candidates that answer independently searchable questions.
|
|
145
|
-
8. Run a counterexample pass: inspect minority definitions and assets that may violate the proposed rule. Narrow or drop unsupported conclusions.
|
|
146
|
-
9. Before wording candidates, form evidence-backed problem frames and assign asset roles. Use `query-routing-v5.md`; do not optimize for candidate count or one-candidate-per-asset coverage.
|
|
147
|
-
10. Keep a decision ledger for discovered problem frames, including routed, shortcut, playbook, definition-only, and evidence-insufficient dispositions.
|
|
148
|
-
|
|
149
|
-
## Anti-Overfitting Rule
|
|
150
|
-
|
|
151
|
-
- Never encode a customer, project name, project ID, asset ID, expected topic title, expected candidate title, or expected candidate count in this skill or CLI generation code.
|
|
152
|
-
- Never start from a fixed industry taxonomy or keyword dictionary. Keywords may locate evidence only after a semantic family is discovered; they must not determine the result.
|
|
153
|
-
- A test package is an evaluation sample, not a source of reusable rules. Tune the protocol only when the change is defensible across unrelated domains.
|
|
154
|
-
- Quality is measured by evidence support and changed Agent behavior, not by matching a previously approved list of topics.
|
|
155
|
-
|
|
156
|
-
## User-Facing Recommendation Display
|
|
157
|
-
|
|
158
|
-
When showing CLI recommendation results to a user, never flatten candidates into a single numbered list. The user-facing answer must use the same hierarchy as the candidate JSON and frontend review UI:
|
|
159
|
-
|
|
160
|
-
```text
|
|
161
|
-
Project semantic recommendation scan completed
|
|
162
|
-
|
|
163
|
-
Summary:
|
|
164
|
-
- Topic domains: <N>
|
|
165
|
-
- Candidate semantics: <N>
|
|
166
|
-
- Validation: passed | failed
|
|
167
|
-
|
|
168
|
-
Topic domain: <topic_domain_title> (<candidate_count> semantics)
|
|
169
|
-
- [<semantic_type>] <candidate title>
|
|
170
|
-
<one-sentence summary>
|
|
171
|
-
Evidence: <asset title 1>, <asset title 2>, ...
|
|
172
|
-
```
|
|
173
|
-
|
|
174
|
-
Rules:
|
|
175
|
-
|
|
176
|
-
- Show topic domains first, then candidates under each domain.
|
|
177
|
-
- Include each domain's semantic count.
|
|
178
|
-
- Include each candidate's semantic type, title, short summary, and primary evidence asset titles.
|
|
179
|
-
- If the CLI command returns `topic_groups`, use that field directly for the display order and counts.
|
|
180
|
-
- Keep the full JSON path or submit command separate from the human summary.
|
|
181
|
-
- Do not present a flat list like `1. semantic A 2. semantic B ...` unless the user explicitly asks for raw candidate order.
|
|
182
|
-
|
|
183
|
-
## Output Discipline
|
|
184
|
-
|
|
185
|
-
When reporting recommendation results, include:
|
|
186
|
-
|
|
187
|
-
- commands run;
|
|
188
|
-
- asset scope, exported/authenticated/unauthenticated asset counts, and snapshot hash;
|
|
189
|
-
- topic domains, semantic counts per domain, and candidate titles grouped under each domain;
|
|
190
|
-
- evidence assets per candidate;
|
|
191
|
-
- quality warnings, if any;
|
|
192
|
-
- problem-frame coverage and rejected shallow-opportunity warnings;
|
|
193
|
-
- submit/review/release IDs after writes.
|
|
@@ -1,165 +0,0 @@
|
|
|
1
|
-
# Project Semantic Query Routing V5
|
|
2
|
-
|
|
3
|
-
Use this protocol when project asset packages contain asset definitions, work-unit membership, recent usage, authentication provenance, and optional notes, but do not contain historical user questions, query failures, or execution traces. Never claim that a structure-inferred path is a proven historical best practice.
|
|
4
|
-
|
|
5
|
-
The only recommendation kinds are:
|
|
6
|
-
|
|
7
|
-
- `QUERY_ROUTING`: choose the right dashboard/report for a question and distinguish nearby assets;
|
|
8
|
-
- `RECALL_SHORTCUT`: reduce broad asset search to a minimal ordered bundle with stop and fallback conditions;
|
|
9
|
-
- `ANALYSIS_PLAYBOOK`: execute a multi-step or branching analysis path supported by notes or strong complementary asset structure.
|
|
10
|
-
|
|
11
|
-
Submission semantic types remain unchanged: routing and shortcuts normally use `asset_semantics`; playbooks normally use `business_rule`.
|
|
12
|
-
|
|
13
|
-
## Evidence roles
|
|
14
|
-
|
|
15
|
-
- Dashboard/report membership and work units show which assets jointly address a problem.
|
|
16
|
-
- Normalized/raw definitions determine what each asset computes, filters, groups, and returns.
|
|
17
|
-
- Display names, descriptions, notes, and dashboard memo text explain intended questions and explicit instructions, but never make otherwise identical definitions different.
|
|
18
|
-
- Recent usage and recency may prioritize a default entry among otherwise suitable assets; they never establish a formula, causal rule, or business priority.
|
|
19
|
-
- Definition families and conflicts distinguish alternatives, duplicates, misleading titles, and exception variants.
|
|
20
|
-
- Published, active, and rejected catalogs provide exclusion and revision context.
|
|
21
|
-
|
|
22
|
-
## Discover problem frames before candidates
|
|
23
|
-
|
|
24
|
-
For every inspected work unit, create zero or more evidence-backed `problem_frames`. Do not require every work unit or asset to produce a candidate. Each frame records:
|
|
25
|
-
|
|
26
|
-
- natural-language problem intent;
|
|
27
|
-
- triggers and constraints;
|
|
28
|
-
- business object and expected answer grain;
|
|
29
|
-
- available assets and their roles;
|
|
30
|
-
- decision points that change asset choice;
|
|
31
|
-
- explicit note/memo guidance, when present;
|
|
32
|
-
- usage/recency priority;
|
|
33
|
-
- evidence gaps.
|
|
34
|
-
|
|
35
|
-
Assign relevant assets one of these roles for the frame:
|
|
36
|
-
|
|
37
|
-
- `DEFAULT_OVERVIEW`;
|
|
38
|
-
- `CONDITIONAL_BRANCH`;
|
|
39
|
-
- `DETAIL_DRILLDOWN`;
|
|
40
|
-
- `COMPARISON_OR_COUNTEREXAMPLE`;
|
|
41
|
-
- `FALLBACK`;
|
|
42
|
-
- `UNSUITABLE_FOR_FRAME`.
|
|
43
|
-
|
|
44
|
-
An asset may have different roles in different frames. Every role assignment must cite exact definition or note evidence.
|
|
45
|
-
|
|
46
|
-
## QUERY_ROUTING gate
|
|
47
|
-
|
|
48
|
-
Generate only when all are true:
|
|
49
|
-
|
|
50
|
-
1. At least two plausible assets could be confused or selected for related questions.
|
|
51
|
-
2. Object, grain, formula, scope, time, parameter, or output differences determine the correct asset.
|
|
52
|
-
3. The candidate states:
|
|
53
|
-
- triggering question types;
|
|
54
|
-
- default asset or entry dashboard;
|
|
55
|
-
- branch conditions and target assets;
|
|
56
|
-
- assets that must not substitute for one another;
|
|
57
|
-
- required parameters or filters;
|
|
58
|
-
- drilldown and fallback.
|
|
59
|
-
4. Removing the route would materially increase wrong-asset selection.
|
|
60
|
-
|
|
61
|
-
A formula may explain why a branch is selected, but it is not a routing semantic by itself.
|
|
62
|
-
|
|
63
|
-
## RECALL_SHORTCUT gate
|
|
64
|
-
|
|
65
|
-
Generate only when all are true:
|
|
66
|
-
|
|
67
|
-
1. A broad work unit contains more assets than a recurring query needs.
|
|
68
|
-
2. Evidence supports a minimal ordered subset.
|
|
69
|
-
3. The candidate states the first asset, continuation conditions, stop condition, safe fallback, and unrelated asset groups that can be skipped.
|
|
70
|
-
4. Usage may prioritize between evidence-equivalent suitable entries, but cannot override definition fit.
|
|
71
|
-
5. Search-space reduction is stated from package membership only; never claim measured latency improvement without runtime evidence.
|
|
72
|
-
|
|
73
|
-
## ANALYSIS_PLAYBOOK gate
|
|
74
|
-
|
|
75
|
-
### High-confidence playbook
|
|
76
|
-
|
|
77
|
-
Requires an explicit note or memo stating an analysis goal, sequence, decision, or caveat, plus executable assets supporting the steps. If any required asset is unauthenticated, label the playbook lower confidence and require project-administrator review; do not present the path as certified.
|
|
78
|
-
|
|
79
|
-
### Medium-confidence recommended analysis path
|
|
80
|
-
|
|
81
|
-
Allowed without explicit notes only when all are true:
|
|
82
|
-
|
|
83
|
-
- at least three complementary roles form an overview-to-branch-to-drilldown or measure-to-diagnose-to-verify path;
|
|
84
|
-
- exact definitions establish branch conditions and prevent interchangeable use;
|
|
85
|
-
- no causal claim, business priority, or mandatory sequence is invented;
|
|
86
|
-
- the output is labeled `RECOMMENDED_ANALYSIS_PATH`;
|
|
87
|
-
- boundaries state that the path is structurally inferred and requires review.
|
|
88
|
-
|
|
89
|
-
Reject paths supported only by co-location, similar titles, independent metrics, or usage ranking.
|
|
90
|
-
|
|
91
|
-
## Reject shallow candidates
|
|
92
|
-
|
|
93
|
-
Reject a candidate that only provides:
|
|
94
|
-
|
|
95
|
-
- one formula, threshold, state, event, property, report, dashboard, or asset name;
|
|
96
|
-
- an inventory of related assets;
|
|
97
|
-
- a topic summary without asset-choice decisions;
|
|
98
|
-
- a broad umbrella listing measures without branches;
|
|
99
|
-
- an inferred maturity hierarchy, causal explanation, or best practice absent from notes;
|
|
100
|
-
- a route that does not reduce ambiguity or search.
|
|
101
|
-
|
|
102
|
-
Simple formulas and states remain evidence inside routes and playbooks. They do not become standalone project semantics.
|
|
103
|
-
|
|
104
|
-
## Candidate fields
|
|
105
|
-
|
|
106
|
-
In addition to the governed submission fields, retain:
|
|
107
|
-
|
|
108
|
-
- `candidate_kind`;
|
|
109
|
-
- `problem_triggers`;
|
|
110
|
-
- `default_route`;
|
|
111
|
-
- `branch_rules`;
|
|
112
|
-
- `do_not_use`;
|
|
113
|
-
- `drilldown_path`;
|
|
114
|
-
- `fallback`;
|
|
115
|
-
- `asset_roles`;
|
|
116
|
-
- `search_space_reduction`;
|
|
117
|
-
- `evidence_strength`: `HIGH_NOTE_BACKED` or `MEDIUM_STRUCTURE_BACKED`;
|
|
118
|
-
- `confidence_limit`;
|
|
119
|
-
- `problem_frame_ids`.
|
|
120
|
-
|
|
121
|
-
The candidate body must cover business definition, applicable questions, decision or calculation rules, Agent usage, and boundaries or exceptions. Use headings natural to the project's language when headings improve readability; exact localized wording is not part of the machine contract.
|
|
122
|
-
|
|
123
|
-
Reusable decision knowledge belongs in `content`. Asset names, ids, counts, and excerpts belong in route fields, `resource_refs`, `evidence`, and `recommendation_reason`.
|
|
124
|
-
|
|
125
|
-
## Decision ledger
|
|
126
|
-
|
|
127
|
-
When producing recommendation artifacts, record:
|
|
128
|
-
|
|
129
|
-
- work units and notes actually inspected;
|
|
130
|
-
- discovered problem frames;
|
|
131
|
-
- asset-role assignments and evidence;
|
|
132
|
-
- routing/shortcut/playbook decisions;
|
|
133
|
-
- rejected shallow opportunities and reasons;
|
|
134
|
-
- candidate-to-frame mappings;
|
|
135
|
-
- dispositions: `ROUTED`, `SHORTCUT`, `PLAYBOOK`, `DEFINITION_ONLY`, or `EVIDENCE_INSUFFICIENT`.
|
|
136
|
-
|
|
137
|
-
Coverage is measured over supported problem frames, not raw asset or definition-signature counts. Every discovered frame needs a disposition, but not every work unit or asset needs a candidate.
|
|
138
|
-
|
|
139
|
-
## Acceptance
|
|
140
|
-
|
|
141
|
-
Candidate count and average prose score are not success metrics. Evaluate with evidence-grounded future-query probes and report:
|
|
142
|
-
|
|
143
|
-
- primary asset or entry selection;
|
|
144
|
-
- conditional branch selection;
|
|
145
|
-
- prevention of plausible wrong-asset substitution;
|
|
146
|
-
- minimal asset bundle;
|
|
147
|
-
- stop and fallback completeness;
|
|
148
|
-
- search-space reduction versus the work unit;
|
|
149
|
-
- playbook step support;
|
|
150
|
-
- unsupported causal or order claims;
|
|
151
|
-
- problem-frame coverage;
|
|
152
|
-
- formula-only or inventory-only candidate count, which must be zero.
|
|
153
|
-
|
|
154
|
-
Before submit, require:
|
|
155
|
-
|
|
156
|
-
- CLI validator `passed=true`;
|
|
157
|
-
- no shallow formula/state-only candidate;
|
|
158
|
-
- every route has a meaningful branch;
|
|
159
|
-
- every shortcut has stop and fallback;
|
|
160
|
-
- every playbook is note-backed or explicitly labeled structure-backed;
|
|
161
|
-
- candidates materially choose or narrow assets better than an undifferentiated work-unit scan.
|
|
162
|
-
|
|
163
|
-
## Anti-overfitting
|
|
164
|
-
|
|
165
|
-
Never encode project names, project ids, asset ids, event names, expected topics, expected titles, expected routes, expected counts, or fixed industry dictionaries. The reusable mechanism is problem framing, asset-role classification, decision branching, minimal bundles, and evidence-bounded paths.
|