@nexusclawhq/cli 0.3.47 → 0.3.49
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/dist/build-info.json +4 -4
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/en-US.d.ts +335 -15
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/en-US.js +350 -30
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/en-US.js.map +1 -1
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/index.d.ts +670 -30
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/zh-CN.d.ts +335 -15
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/zh-CN.js +350 -30
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/zh-CN.js.map +1 -1
- package/dist/nexus-cli/src/commands/org/login-jwt.d.ts +8 -0
- package/dist/nexus-cli/src/commands/org/login-jwt.js +33 -2
- package/dist/nexus-cli/src/commands/org/login-jwt.js.map +1 -1
- package/dist/nexus-cli/src/commands/org/login-jwt.test.js +20 -0
- package/dist/nexus-cli/src/commands/org/login-jwt.test.js.map +1 -1
- package/dist/nexus-cli/src/services/workforce-observe-remote.d.ts +2 -1
- package/dist/nexus-cli/src/services/workforce-observe-remote.js +12 -5
- package/dist/nexus-cli/src/services/workforce-observe-remote.js.map +1 -1
- package/dist/nexus-cli/src/services/workforce-observe-remote.test.js +5 -0
- package/dist/nexus-cli/src/services/workforce-observe-remote.test.js.map +1 -1
- package/dist/nexus-cli/src/services/workforce-test-remote.d.ts +1 -1
- package/dist/nexus-cli/src/services/workforce-test-remote.js +1 -1
- package/dist/nexus-cli/src/services/workforce-test-remote.test.js +2 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -772,6 +772,22 @@ const messages = {
|
|
|
772
772
|
confidenceChipTooltip: "Evidence-strength tier preset by signal type. Actual release still requires the test, simulation, and approval gates.",
|
|
773
773
|
riskChipTooltip: "Risk level: L0 is the lowest, increasing by level.",
|
|
774
774
|
draftIntroHint: "This is a draft candidate auto-generated from real work evidence; it does not change any production artifact. It takes effect only after passing the test, simulation, and approval gates.",
|
|
775
|
+
changeSummary: "Proposed improvement",
|
|
776
|
+
changeReason: "Why handle this now",
|
|
777
|
+
releaseProgress: "Readiness progress",
|
|
778
|
+
nextStep: "Recommended next step",
|
|
779
|
+
viewAndHandle: "Review and act",
|
|
780
|
+
businessScope: "Affected scope",
|
|
781
|
+
technicalDetails: "Technical and audit details",
|
|
782
|
+
evidenceCount: "{count} work evidence item(s) cited",
|
|
783
|
+
evidenceIds: "Raw evidence IDs",
|
|
784
|
+
actionHintBehavior: "Move into draft, run a simulation, then complete approval.",
|
|
785
|
+
actionHintMaterialize: "Create a governed candidate before testing and approval.",
|
|
786
|
+
actionHintBlocked: "Blocked. Add evidence or resolve the release-gate issue first.",
|
|
787
|
+
stepDraft: "Draft",
|
|
788
|
+
stepSimulation: "Simulation",
|
|
789
|
+
stepApproval: "Approval",
|
|
790
|
+
stepPublish: "Publish",
|
|
775
791
|
runSimulation: "Run simulation",
|
|
776
792
|
runSimulationTooltip: "Run a real test suite simulation to check if it passes the release gate.",
|
|
777
793
|
runSimulationSuccess: "Simulation completed",
|
|
@@ -1906,6 +1922,18 @@ const messages = {
|
|
|
1906
1922
|
planStarterName: "Starter",
|
|
1907
1923
|
planGrowthName: "Growth",
|
|
1908
1924
|
planEnterpriseName: "Enterprise",
|
|
1925
|
+
planStarterFeature1: "2M tokens / month included",
|
|
1926
|
+
planStarterFeature2: "20 GB data storage",
|
|
1927
|
+
planStarterFeature3: "For small teams launching their first digital employees",
|
|
1928
|
+
planStarterFeature4: "Outcome attribution pilot with billing details",
|
|
1929
|
+
planGrowthFeature1: "10M tokens / month included",
|
|
1930
|
+
planGrowthFeature2: "100 GB data storage",
|
|
1931
|
+
planGrowthFeature3: "For multi-agent daily business operations",
|
|
1932
|
+
planGrowthFeature4: "Outcome attribution pilot with billing details",
|
|
1933
|
+
planEnterpriseFeature1: "50M tokens / month included",
|
|
1934
|
+
planEnterpriseFeature2: "1 TB data storage",
|
|
1935
|
+
planEnterpriseFeature3: "Custom token / storage / API quotas",
|
|
1936
|
+
planEnterpriseFeature4: "Enterprise governance, audit, and dedicated delivery",
|
|
1909
1937
|
upgrade: "Upgrade",
|
|
1910
1938
|
invoiceHistory: "Invoice History",
|
|
1911
1939
|
invoicePeriod: "Period",
|
|
@@ -2683,6 +2711,7 @@ const messages = {
|
|
|
2683
2711
|
aiKcUpdateOk: "Knowledge chunk updated",
|
|
2684
2712
|
aiKcDeleteOk: "Deleted",
|
|
2685
2713
|
aiKcDeleteConfirm: "Confirm delete?",
|
|
2714
|
+
aiKcDeleteFailed: "Delete failed. Please try again.",
|
|
2686
2715
|
aiSopStatusDraft: "Draft",
|
|
2687
2716
|
aiSopStatusReviewed: "Reviewed",
|
|
2688
2717
|
aiSopStatusActive: "Active",
|
|
@@ -2953,7 +2982,7 @@ const messages = {
|
|
|
2953
2982
|
webhooks: {
|
|
2954
2983
|
dlq: "Dead Letter Queue",
|
|
2955
2984
|
title: "Webhooks",
|
|
2956
|
-
description: "Configure Webhook endpoints to
|
|
2985
|
+
description: "Configure Webhook endpoints to deliver asynchronous event notifications to external systems",
|
|
2957
2986
|
create: "Create Webhook",
|
|
2958
2987
|
healthMonitor: "Health Monitor",
|
|
2959
2988
|
healthTotalWebhooks: "Total Webhooks",
|
|
@@ -2980,6 +3009,7 @@ const messages = {
|
|
|
2980
3009
|
emptyHint: 'Click "Create Webhook" to configure your first endpoint',
|
|
2981
3010
|
totalCount: "Total {total} Webhooks",
|
|
2982
3011
|
actionTest: "Test",
|
|
3012
|
+
actionEdit: "Edit",
|
|
2983
3013
|
actionDisable: "Disable",
|
|
2984
3014
|
actionEnable: "Enable",
|
|
2985
3015
|
actionDelete: "Delete",
|
|
@@ -2989,11 +3019,14 @@ const messages = {
|
|
|
2989
3019
|
msgDeleted: "Webhook deleted",
|
|
2990
3020
|
msgDeleteFailed: "Delete failed",
|
|
2991
3021
|
msgCreated: "Webhook created",
|
|
3022
|
+
msgUpdated: "Webhook updated",
|
|
2992
3023
|
msgCreateFailed: "Create failed",
|
|
3024
|
+
msgUpdateFailed: "Update failed",
|
|
2993
3025
|
msgTesting: "Sending test request...",
|
|
2994
3026
|
msgTestSent: "Test request sent",
|
|
2995
3027
|
msgTestFailed: "Test failed",
|
|
2996
3028
|
createTitle: "Create Webhook",
|
|
3029
|
+
editTitle: "Edit Webhook",
|
|
2997
3030
|
fieldTargetUrl: "Target URL",
|
|
2998
3031
|
fieldTargetUrlRequired: "Please enter Webhook URL",
|
|
2999
3032
|
fieldTargetUrlInvalid: "Please enter a valid URL",
|
|
@@ -3004,6 +3037,7 @@ const messages = {
|
|
|
3004
3037
|
fieldOperationsPlaceholder: "Select events to subscribe",
|
|
3005
3038
|
btnCancel: "Cancel",
|
|
3006
3039
|
btnCreate: "Create",
|
|
3040
|
+
btnSave: "Save",
|
|
3007
3041
|
btnDelete: "Delete",
|
|
3008
3042
|
deleteConfirmTitle: "Confirm Delete",
|
|
3009
3043
|
deleteConfirmText: "Are you sure you want to delete this Webhook?",
|
|
@@ -4481,6 +4515,16 @@ const messages = {
|
|
|
4481
4515
|
pickEmployee: "Choose an AI employee",
|
|
4482
4516
|
searchEmployee: "Search AI employees",
|
|
4483
4517
|
online: "Online · Voice/text/video available",
|
|
4518
|
+
selectEmployeeTitle: "Choose an AI employee to rehearse",
|
|
4519
|
+
selectEmployeeDescription: "Select an employee on the left, then use a real task to verify understanding, responses, and governed actions.",
|
|
4520
|
+
sessionGoalTitle: "Rehearsing: {name}",
|
|
4521
|
+
sessionGoalDescription: "Goal for this round: {description}. Give the employee a real task. The system will ask for confirmation before writes or sensitive actions.",
|
|
4522
|
+
defaultEmployeeGoal: "verify that this employee understands the task and produces a usable result",
|
|
4523
|
+
sessionResultTitle: "This round has produced a valid rehearsal result",
|
|
4524
|
+
sessionResultDescription: "Choose 'Finish and start a new rehearsal' to close this conversation and save its learning record for the employee. Use Test Center for standardized validation, or Executions to inspect real task activity.",
|
|
4525
|
+
finishAndStartNew: "Finish and start new rehearsal",
|
|
4526
|
+
openTestCenter: "Open Test Center",
|
|
4527
|
+
openExecutions: "View executions",
|
|
4484
4528
|
modeVoice: "Voice/Text",
|
|
4485
4529
|
modeVideo: "Video",
|
|
4486
4530
|
servingCustomer: "Serving customer: {name} · Long-term memory loaded",
|
|
@@ -5099,6 +5143,9 @@ const messages = {
|
|
|
5099
5143
|
commentLabel: "Comments",
|
|
5100
5144
|
rejectReasonRequired: "Please provide a rejection reason",
|
|
5101
5145
|
approveCommentPlaceholder: "Optional, add approval comments",
|
|
5146
|
+
statusNeedsConfirmation: "Status needs confirmation",
|
|
5147
|
+
valueListSummary: "Contains {count} items",
|
|
5148
|
+
valueObjectSummary: "Contains {count} fields",
|
|
5102
5149
|
riskLevel: {
|
|
5103
5150
|
critical: "Critical Risk",
|
|
5104
5151
|
high: "High Risk",
|
|
@@ -6885,6 +6932,7 @@ const messages = {
|
|
|
6885
6932
|
editInstruction: "Edit instruction",
|
|
6886
6933
|
evidenceRequired: "Evidence required",
|
|
6887
6934
|
executionHistory: "Execution history",
|
|
6935
|
+
externalConversations: "External channel conversations",
|
|
6888
6936
|
executionIdentity: "Execution identity and authority",
|
|
6889
6937
|
executionSteps: "Execution steps",
|
|
6890
6938
|
executionStepsEmpty: "Waiting for tool call records.",
|
|
@@ -9468,6 +9516,7 @@ const messages = {
|
|
|
9468
9516
|
colTest: "Test",
|
|
9469
9517
|
testConnection: "Test Connection",
|
|
9470
9518
|
testProviderAria: "Test Provider connection",
|
|
9519
|
+
noExecutableTestTarget: "The current model has no executable connection test capability",
|
|
9471
9520
|
colActions: "Actions",
|
|
9472
9521
|
systemProviderNoEdit: "Platform-provided Providers cannot be edited or deleted",
|
|
9473
9522
|
confirmDeleteProvider: "Delete this Provider?",
|
|
@@ -12797,6 +12846,10 @@ const messages = {
|
|
|
12797
12846
|
},
|
|
12798
12847
|
},
|
|
12799
12848
|
formulaFieldUi: {
|
|
12849
|
+
completion: {
|
|
12850
|
+
fieldsSection: "Fields",
|
|
12851
|
+
functionsSection: "Functions",
|
|
12852
|
+
},
|
|
12800
12853
|
batchRecalculate: {
|
|
12801
12854
|
title: "Batch Recalculate Formula Field",
|
|
12802
12855
|
skip: "Skip",
|
|
@@ -12853,7 +12906,6 @@ const messages = {
|
|
|
12853
12906
|
categoriesAriaLabel: "Formula function categories",
|
|
12854
12907
|
categoryFunctionsAriaLabel: "{category} functions",
|
|
12855
12908
|
},
|
|
12856
|
-
completion: {},
|
|
12857
12909
|
},
|
|
12858
12910
|
navigationUi: {
|
|
12859
12911
|
searchPlaceholder: "Search...",
|
|
@@ -17048,19 +17100,44 @@ const messages = {
|
|
|
17048
17100
|
adminPanel: "Admin Panel",
|
|
17049
17101
|
adminHealth: {
|
|
17050
17102
|
indicators: {
|
|
17051
|
-
database: {
|
|
17052
|
-
|
|
17103
|
+
database: {
|
|
17104
|
+
label: "Database",
|
|
17105
|
+
description: "Business database connectivity and core table health.",
|
|
17106
|
+
error: "Database connection issue; check the instance status and connection pool.",
|
|
17107
|
+
},
|
|
17108
|
+
redis: {
|
|
17109
|
+
label: "Redis Cache",
|
|
17110
|
+
description: "Redis status backing cache and queues.",
|
|
17111
|
+
error: "Redis connection issue; check the instance and network connectivity.",
|
|
17112
|
+
},
|
|
17053
17113
|
worker: {
|
|
17054
17114
|
label: "Background Job Worker",
|
|
17055
17115
|
description: "Worker and queue status for asynchronous platform jobs.",
|
|
17056
17116
|
error: "The agent execution queue is not initialized.",
|
|
17057
17117
|
},
|
|
17058
|
-
connectedAccount: {
|
|
17118
|
+
connectedAccount: {
|
|
17119
|
+
label: "Connected Accounts",
|
|
17120
|
+
description: "Authorization status of external integration accounts (IM / email / telephony).",
|
|
17121
|
+
error: "A connected account has expired; reauthorize it.",
|
|
17122
|
+
},
|
|
17059
17123
|
app: {
|
|
17060
|
-
|
|
17124
|
+
label: "App Process",
|
|
17125
|
+
description: "Backend application process and core dependency status.",
|
|
17126
|
+
error: "Application health check failed; inspect the runtime logs.",
|
|
17061
17127
|
},
|
|
17062
17128
|
},
|
|
17063
|
-
detailLabels: {
|
|
17129
|
+
detailLabels: {
|
|
17130
|
+
configuredCheck: "Configured Check",
|
|
17131
|
+
status: "Status",
|
|
17132
|
+
waiting: "Waiting",
|
|
17133
|
+
active: "Active",
|
|
17134
|
+
completed: "Completed",
|
|
17135
|
+
failed: "Failed",
|
|
17136
|
+
delayed: "Delayed",
|
|
17137
|
+
paused: "Paused",
|
|
17138
|
+
workerCount: "Workers",
|
|
17139
|
+
consumerActive: "Consumer Active",
|
|
17140
|
+
},
|
|
17064
17141
|
notConfigured: "Not configured",
|
|
17065
17142
|
yes: "Yes",
|
|
17066
17143
|
no: "No"
|
|
@@ -17601,6 +17678,24 @@ const messages = {
|
|
|
17601
17678
|
searchPlaceholder: "Search platform admin...",
|
|
17602
17679
|
noMatchingItems: "No matching platform admin items",
|
|
17603
17680
|
menuPlatformAdminHome: "Platform Overview",
|
|
17681
|
+
sectionPlatformOperations: "Platform Operations",
|
|
17682
|
+
sectionProviderControlPlane: "Provider Control Plane",
|
|
17683
|
+
sectionSupportGovernance: "Support & Governance",
|
|
17684
|
+
sectionReleaseGovernance: "Release Governance",
|
|
17685
|
+
sectionPlatformInfrastructure: "Platform Infrastructure",
|
|
17686
|
+
menuOpsSubscriptions: "Subscriptions",
|
|
17687
|
+
menuOpsHealth: "Tenant Health",
|
|
17688
|
+
menuOpsBilling: "Billing Overview",
|
|
17689
|
+
menuOpsRenewals: "Renewals",
|
|
17690
|
+
menuAiProvider: "AI Provider",
|
|
17691
|
+
menuDemoAccess: "Demo Access",
|
|
17692
|
+
menuTenantExecutionAudit: "Execution Logs",
|
|
17693
|
+
menuPackagePromotions: "Package Promotions",
|
|
17694
|
+
menuPackageRollouts: "Staged Rollouts",
|
|
17695
|
+
menuAdminPanel: "Admin Panel",
|
|
17696
|
+
menuQueues: "Queues",
|
|
17697
|
+
menuCronJobs: "Cron Jobs",
|
|
17698
|
+
menuSystemLogs: "System Logs",
|
|
17604
17699
|
providerControlPlaneUi: {
|
|
17605
17700
|
family: {
|
|
17606
17701
|
ai: "AI Provider Control Plane",
|
|
@@ -18507,6 +18602,82 @@ const messages = {
|
|
|
18507
18602
|
sensitiveAllow: "Allow display",
|
|
18508
18603
|
},
|
|
18509
18604
|
imBotSetup: {
|
|
18605
|
+
testConnectivity: "Connectivity test",
|
|
18606
|
+
connectivityTestFailed: "Connectivity test request failed",
|
|
18607
|
+
connectivityOutcome: {
|
|
18608
|
+
PASS: "Connectivity passed",
|
|
18609
|
+
PARTIAL: "Partially passed",
|
|
18610
|
+
FAIL: "Connectivity failed",
|
|
18611
|
+
REDIRECT_REQUIRED: "Test in the owning module",
|
|
18612
|
+
},
|
|
18613
|
+
connectivityOutcomeDetail: {
|
|
18614
|
+
PASS: "Connectivity test passed",
|
|
18615
|
+
PARTIAL: "The base configuration is valid; an end-to-end test is still required",
|
|
18616
|
+
FAIL: "Connectivity test failed; check the configuration and network",
|
|
18617
|
+
REDIRECT_REQUIRED: "Open the owning module to complete the test",
|
|
18618
|
+
},
|
|
18619
|
+
connectivityCode: {
|
|
18620
|
+
FEISHU_TOKEN_OK: "Feishu App ID and App Secret are valid, and the token service is reachable",
|
|
18621
|
+
FEISHU_TOKEN_REJECTED: "Feishu rejected the configured App ID or App Secret",
|
|
18622
|
+
FEISHU_MESSAGE_DELIVERY_OK: "Feishu accepted the test message; the target returned HTTP {status}",
|
|
18623
|
+
FEISHU_MESSAGE_DELIVERY_REJECTED: "Feishu rejected the test message; check the chat_id, bot membership, and application permissions",
|
|
18624
|
+
FEISHU_TEST_INPUT_REQUIRED: "Enter both the Feishu chat_id and test content",
|
|
18625
|
+
FEISHU_TEST_INPUT_INVALID: "The chat_id or test content exceeds the allowed length",
|
|
18626
|
+
WECOM_TOKEN_OK: "WeCom application credentials are valid, and the token service is reachable",
|
|
18627
|
+
WECOM_TOKEN_REJECTED: "WeCom rejected the configured application credentials",
|
|
18628
|
+
WECOM_SMART_BOT_CALLBACK_VERIFICATION_REQUIRED: "Token and EncodingAESKey are saved. Save the callback URL in WeCom Smart Bot to complete verification",
|
|
18629
|
+
DINGTALK_TOKEN_OK: "DingTalk AppKey and AppSecret are valid, and the token service is reachable",
|
|
18630
|
+
DINGTALK_STREAM_CREDENTIALS_OK_RUNTIME_PENDING: "DingTalk credentials are valid. Send a real message to the robot to confirm the persistent Stream connection and reply path.",
|
|
18631
|
+
DINGTALK_TOKEN_REJECTED: "DingTalk rejected the configured AppKey or AppSecret",
|
|
18632
|
+
SLACK_CREDENTIALS_OK_ADAPTER_PENDING: "Slack credentials are valid, but the inbound runtime adapter is not connected yet",
|
|
18633
|
+
SLACK_CREDENTIALS_REJECTED: "Slack rejected the configured credentials",
|
|
18634
|
+
TEAMS_CREDENTIALS_OK_ADAPTER_PENDING: "Microsoft Teams credentials are valid, but the inbound runtime adapter is not connected yet",
|
|
18635
|
+
TEAMS_CREDENTIALS_REJECTED: "Microsoft rejected the configured Teams credentials",
|
|
18636
|
+
API_CREDENTIALS_SAVED_CLIENT_TEST_REQUIRED: "API credentials are saved; verify them with a client-originated request",
|
|
18637
|
+
API_CALLBACK_OK: "The API callback is reachable; invocation credentials still require a client test",
|
|
18638
|
+
API_CALLBACK_REJECTED: "The API callback rejected the test request",
|
|
18639
|
+
WEB_CHAT_WIDGET_TEST_REQUIRED: "Complete the end-to-end test in the Web Chat widget",
|
|
18640
|
+
TELEPHONY_TEST_REQUIRED: "Run the telephony provider connection test in Voice settings",
|
|
18641
|
+
WEBHOOK_DELIVERY_OK: "The test message was delivered successfully; the target returned HTTP {status}",
|
|
18642
|
+
WEBHOOK_HTTP_REJECTED: "The Webhook target returned HTTP {status} and did not accept the test message",
|
|
18643
|
+
WEBHOOK_PROVIDER_REJECTED: "The external provider rejected the test message; check the Webhook URL and provider security rules",
|
|
18644
|
+
CONNECTION_FAILED: "The Webhook target could not be reached; check the network and URL",
|
|
18645
|
+
TARGET_BLOCKED: "The Webhook target was blocked by the outbound security policy",
|
|
18646
|
+
CONFIG_INCOMPLETE: "Required channel configuration is incomplete",
|
|
18647
|
+
TEST_MESSAGE_REQUIRED: "Enter test content before sending",
|
|
18648
|
+
TEST_MESSAGE_TOO_LONG: "Test content must not exceed 2000 characters",
|
|
18649
|
+
},
|
|
18650
|
+
webhookTestTitle: "Have a digital employee send a Webhook test message",
|
|
18651
|
+
webhookTestDescription: "Choose an authorized digital employee. The employee generates the test message before the platform delivers it to the saved Webhook URL.",
|
|
18652
|
+
deliveryTestEmployeeLabel: "Digital employee generating the test message",
|
|
18653
|
+
deliveryTestEmployeePlaceholder: "Choose an authorized digital employee",
|
|
18654
|
+
deliveryTestGenerateAndSend: "Generate and send test message",
|
|
18655
|
+
deliveryTestScenarioLabel: "Message scenario",
|
|
18656
|
+
deliveryTestScenario: {
|
|
18657
|
+
welcome: {
|
|
18658
|
+
label: "Welcome message",
|
|
18659
|
+
prompt: "a short, warm welcome for a new customer",
|
|
18660
|
+
},
|
|
18661
|
+
event_reminder: {
|
|
18662
|
+
label: "Event reminder",
|
|
18663
|
+
prompt: "a reminder for an upcoming event with a concise call to action",
|
|
18664
|
+
},
|
|
18665
|
+
service_follow_up: {
|
|
18666
|
+
label: "Service follow-up",
|
|
18667
|
+
prompt: "a warm follow-up after customer service, inviting feedback",
|
|
18668
|
+
},
|
|
18669
|
+
},
|
|
18670
|
+
deliveryTestGenerationPrompt: "Generate a short, professional, natural business message for this scenario: {scenario}. Return only the message body with no explanation. Do not mention testing, Webhooks, or the system.",
|
|
18671
|
+
deliveryTestGenerationFailed: "The digital employee could not generate a test message. Please try again.",
|
|
18672
|
+
sendTestMessage: "Send test message",
|
|
18673
|
+
testCredentials: "Test credentials and platform connection",
|
|
18674
|
+
credentialTestTitle: "Test credentials and platform connection",
|
|
18675
|
+
credentialTestScopeTitle: "This test will not send a group message",
|
|
18676
|
+
credentialTestScopeDescription: "This application channel only verifies platform credentials and the token service. Sending a group message also requires a platform chat ID or recipient ID, which this channel does not currently store.",
|
|
18677
|
+
startCredentialTest: "Start test",
|
|
18678
|
+
feishuMessageTestTitle: "Have a digital employee send a Feishu group test message",
|
|
18679
|
+
feishuMessageTestDescription: "Enter the Feishu group chat_id and choose an authorized digital employee. The employee generates the message before delivery; the app bot must be in the group and have permission to send messages.",
|
|
18680
|
+
feishuChatIdPlaceholder: "Enter the Feishu group chat_id, for example oc_xxxxxxxxx",
|
|
18510
18681
|
toolLabel: {
|
|
18511
18682
|
recordQuery: "Query CRM",
|
|
18512
18683
|
recordAggregate: "Aggregate CRM",
|
|
@@ -18522,22 +18693,22 @@ const messages = {
|
|
|
18522
18693
|
label: "DingTalk",
|
|
18523
18694
|
step1: "Sign in to the DingTalk Open Platform (open-dev.dingtalk.com) and create an enterprise-internal app under \"App Development\".",
|
|
18524
18695
|
step2: "On the \"Credentials & Basic Info\" page, copy the AppKey (Client ID) and AppSecret (Client Secret).",
|
|
18525
|
-
step3: "Enable the
|
|
18696
|
+
step3: "Enable the Robot capability. Choose Stream mode (recommended), or choose Callback and paste the workspace callback URL after saving.",
|
|
18526
18697
|
step4: "Publish the app version, grant it to the organization, then paste the credentials below.",
|
|
18527
18698
|
},
|
|
18528
18699
|
feishu: {
|
|
18529
18700
|
label: "Feishu",
|
|
18530
18701
|
step1: "Sign in to open.feishu.cn and create a custom enterprise app in the Developer Console.",
|
|
18531
18702
|
step2: "On the \"Credentials & Basic Info\" page, copy the App ID and App Secret.",
|
|
18532
|
-
step3: "
|
|
18533
|
-
step4: "
|
|
18703
|
+
step3: "Under Events & Callbacks, choose \"Send events to developer server\", subscribe to message events, and configure the callback URL.",
|
|
18704
|
+
step4: "Copy the Encrypt Key and Verification Token from Encryption Strategy, enter them below, then create and publish an app version.",
|
|
18534
18705
|
},
|
|
18535
18706
|
wecom: {
|
|
18536
|
-
label: "WeCom",
|
|
18537
|
-
step1: "
|
|
18538
|
-
step2: "
|
|
18539
|
-
step3: "
|
|
18540
|
-
note: "
|
|
18707
|
+
label: "WeCom Smart Bot",
|
|
18708
|
+
step1: "Create a Smart Bot in the WeCom admin console, open API Configuration, and choose URL callback mode.",
|
|
18709
|
+
step2: "Enter the Token and EncodingAESKey below, save the channel, then copy the generated callback URL.",
|
|
18710
|
+
step3: "Enter that callback URL and the same Token and EncodingAESKey in WeCom, complete URL verification, and add the Smart Bot to the target group.",
|
|
18711
|
+
note: "This is Smart Bot URL callback mode. CorpId, AgentId, and application Secret are not required. WeCom performs a GET verification when saving.",
|
|
18541
18712
|
},
|
|
18542
18713
|
slack: {
|
|
18543
18714
|
label: "Slack",
|
|
@@ -18563,6 +18734,11 @@ const messages = {
|
|
|
18563
18734
|
step2: "Create a key and copy the API Key and Signing Secret.",
|
|
18564
18735
|
step3: "Configure the Callback URL for event delivery, then paste the credentials below.",
|
|
18565
18736
|
},
|
|
18737
|
+
webhook: {
|
|
18738
|
+
label: "Webhook",
|
|
18739
|
+
step1: "Copy the complete Webhook message delivery URL provided by the external platform into the field below.",
|
|
18740
|
+
note: "Webhook actively delivers messages to this URL. The URL already contains the external platform's authentication information, so no application credentials or additional parameters are required.",
|
|
18741
|
+
},
|
|
18566
18742
|
phone_agent: {
|
|
18567
18743
|
label: "Phone Agent",
|
|
18568
18744
|
step1: "Open \"Platform Settings → Telephony\" and select the telephony provider.",
|
|
@@ -18571,10 +18747,13 @@ const messages = {
|
|
|
18571
18747
|
},
|
|
18572
18748
|
},
|
|
18573
18749
|
field: {
|
|
18750
|
+
webhook: {
|
|
18751
|
+
webhookUrl: "Webhook URL",
|
|
18752
|
+
dingtalkSigningSecret: "DingTalk robot signing secret (when signing is enabled)",
|
|
18753
|
+
},
|
|
18574
18754
|
wecom: {
|
|
18575
|
-
|
|
18576
|
-
|
|
18577
|
-
secret: "Secret",
|
|
18755
|
+
token: "Token",
|
|
18756
|
+
aesKey: "EncodingAESKey",
|
|
18578
18757
|
},
|
|
18579
18758
|
},
|
|
18580
18759
|
simNoReply: "(No reply)",
|
|
@@ -18594,8 +18773,8 @@ const messages = {
|
|
|
18594
18773
|
add: "Add integration",
|
|
18595
18774
|
title: "AI Access Center",
|
|
18596
18775
|
subtitle: "Manage WeCom, Slack, Teams, Web Chat, API, Phone Agent, and future entry points, then route every request to the right AI employee.",
|
|
18597
|
-
boundaryTitle: "
|
|
18598
|
-
boundaryDescription: "
|
|
18776
|
+
boundaryTitle: "External channels use an explicit employee whitelist",
|
|
18777
|
+
boundaryDescription: "Each channel may invoke only AI employees explicitly selected by an administrator. Employees outside the list remain internal-only. The list does not change an employee's identity, permissions, or data scope.",
|
|
18599
18778
|
tabRobots: "Bot Management",
|
|
18600
18779
|
tabGroups: "Group Bindings",
|
|
18601
18780
|
tabRoutes: "Routing Rules",
|
|
@@ -18621,6 +18800,15 @@ const messages = {
|
|
|
18621
18800
|
modePerAgent: "Bind a specific employee",
|
|
18622
18801
|
modeDispatcher: "Dispatcher routing",
|
|
18623
18802
|
modeSmart: "Smart Routing",
|
|
18803
|
+
explicitBindingRoute: "Explicit employee whitelist",
|
|
18804
|
+
boundEmployeeLabel: "AI employees allowed to serve externally",
|
|
18805
|
+
boundEmployeeHelp: "Select one or more employees. With multiple employees, the user must name one explicitly; the system does not guess or use a dispatcher fallback.",
|
|
18806
|
+
employeePlaceholder: "Select employees allowed to be invoked from this channel",
|
|
18807
|
+
employeeRequired: "Select at least one AI employee allowed to serve externally",
|
|
18808
|
+
employeeUnavailable: "Employee unavailable or removed from the whitelist",
|
|
18809
|
+
selectedEmployeeOverflow: "{count} more",
|
|
18810
|
+
selectedEmployeeCount: "{count} selected (complete list)",
|
|
18811
|
+
selectedEmployeeListAria: "Complete list of selected externally serving employees",
|
|
18624
18812
|
priorityLabel: "Routing priority",
|
|
18625
18813
|
priorityTip: "Higher values win when other match conditions are equal.",
|
|
18626
18814
|
defaultDispatcherLabel: "Use as default dispatcher",
|
|
@@ -18630,40 +18818,134 @@ const messages = {
|
|
|
18630
18818
|
copyCallbackUrl: "Copy callback URL",
|
|
18631
18819
|
copyCallbackUrlAria: "Copy callback URL",
|
|
18632
18820
|
callbackUrlCopied: "Callback URL copied. Paste it into the message-receive / callback URL field on the open platform.",
|
|
18821
|
+
callbackUrlCopyFailed: "The browser did not allow automatic copying. Retry from an HTTPS page.",
|
|
18822
|
+
connectionModeLabel: "Robot connection mode",
|
|
18823
|
+
connectionMode: {
|
|
18824
|
+
stream: "Stream delivery (recommended)",
|
|
18825
|
+
callback: "Callback URL",
|
|
18826
|
+
streamHelp: "NexusClaw opens a persistent connection to receive messages, so no public callback URL is required. The connection starts and reconnects automatically while the channel is enabled.",
|
|
18827
|
+
callbackHelp: "DingTalk delivers messages to a public HTTPS endpoint. After saving, copy the generated callback URL into the DingTalk console.",
|
|
18828
|
+
},
|
|
18829
|
+
dingtalkStreamReady: "Stream mode keeps a persistent backend connection and needs no callback URL. Make sure the DingTalk robot is also configured for Stream mode and published.",
|
|
18830
|
+
dingtalkStreamError: "The Stream connection is unhealthy. Check AppKey/AppSecret, the robot's Stream setting, and backend outbound network access.",
|
|
18831
|
+
dingtalkStreamStepTitle: "Confirm Stream connection",
|
|
18832
|
+
dingtalkStreamStepDescription: "Enable the channel, then send a message directly to the DingTalk robot",
|
|
18633
18833
|
confirmDelete: "Delete this integration?",
|
|
18634
18834
|
delete: "Delete",
|
|
18635
18835
|
cancel: "Cancel",
|
|
18636
18836
|
deleteChannelAria: "Delete integration",
|
|
18637
|
-
simTitle: "
|
|
18638
|
-
simHint: "
|
|
18837
|
+
simTitle: "Channel service rehearsal",
|
|
18838
|
+
simHint: "Current channel: {channel}. Select an employee from the real binding list, then enter a practical question.",
|
|
18839
|
+
simNoChannel: "Select a configured external channel first.",
|
|
18840
|
+
simNoEmployees: "This channel has no available AI employee whitelist. Edit the channel configuration first.",
|
|
18639
18841
|
simServing: "Serving customer",
|
|
18640
18842
|
simToolsUsed: "Tools used",
|
|
18641
18843
|
simThinking: "Employee is replying...",
|
|
18642
|
-
simPh: "
|
|
18844
|
+
simPh: "Enter a practical business question for {employee}",
|
|
18643
18845
|
simSend: "Send",
|
|
18644
18846
|
editTitle: "Edit integration",
|
|
18645
18847
|
addTitle: "Add integration",
|
|
18646
18848
|
pickPlatform: "1. Choose an integration type",
|
|
18647
18849
|
howTo: "2. Configure the external channel and obtain its credentials",
|
|
18850
|
+
webhookHowTo: "2. Prepare the external message delivery URL",
|
|
18648
18851
|
openConsole: "Open",
|
|
18649
18852
|
console: "open platform",
|
|
18650
18853
|
fillIn: "3. Fill in the configuration",
|
|
18854
|
+
webhookFillIn: "3. Enter the Webhook delivery configuration",
|
|
18855
|
+
webhookUrlRequired: "Enter the external Webhook message delivery URL",
|
|
18856
|
+
credentialFieldRequired: "Enter {field}",
|
|
18857
|
+
webhookSetupTitle: "Configure proactive Webhook delivery",
|
|
18858
|
+
webhookSetupDescription: "Webhook lets explicitly authorized AI employees deliver messages to an external URL. It does not receive external messages, use a callback URL, or require callback verification.",
|
|
18859
|
+
webhookStepAdd: "Add Webhook",
|
|
18860
|
+
webhookStepAddDescription: "Choose the outbound Webhook delivery type",
|
|
18861
|
+
webhookStepUrl: "Enter delivery URL",
|
|
18862
|
+
webhookStepUrlDescription: "Enter the complete Webhook URL provided by the external platform",
|
|
18863
|
+
webhookStepEmployees: "Authorize AI employees",
|
|
18864
|
+
webhookStepEmployeesDescription: "Only explicitly authorized employees can proactively send messages",
|
|
18865
|
+
webhookConfigured: "Outbound Webhook delivery configured",
|
|
18866
|
+
webhookDisabled: "Outbound Webhook delivery paused",
|
|
18867
|
+
webhookDeliveryReady: "Authorized AI employees can proactively deliver messages to the external Webhook URL. No callback verification or inbound message reception is required.",
|
|
18868
|
+
webhookDeliveryPaused: "Message delivery is paused. Re-enable it to allow authorized AI employees to send messages to this URL.",
|
|
18869
|
+
webhookSendingEmployees: "AI employees allowed to send messages",
|
|
18870
|
+
webhookSendingEmployeesHelp: "Only AI employees explicitly authorized here can proactively send messages to this Webhook URL.",
|
|
18871
|
+
webhookDeliveryMode: "Delivery direction",
|
|
18872
|
+
webhookDeliveryModeValue: "Platform proactively delivers to external URL",
|
|
18873
|
+
webhookUrlConfigured: "Webhook URL",
|
|
18874
|
+
webhookUrlConfiguredValue: "Saved",
|
|
18875
|
+
webhookUrlMissing: "Not saved",
|
|
18876
|
+
pauseWebhookDelivery: "Pause message delivery",
|
|
18877
|
+
enableWebhookDelivery: "Enable message delivery",
|
|
18878
|
+
webhookChannelColumn: "Outbound Webhook",
|
|
18879
|
+
webhookSenderColumn: "Sender",
|
|
18880
|
+
webhookDeliveryColumn: "Can deliver messages",
|
|
18881
|
+
webhookDeliveryEnabled: "Proactive delivery enabled",
|
|
18882
|
+
webhookDeliveryPausedLabel: "Delivery paused",
|
|
18883
|
+
webhookConfigHeader: "Message delivery URL (the complete Webhook URL provided by the external platform)",
|
|
18884
|
+
flow: {
|
|
18885
|
+
inbound_callback: {
|
|
18886
|
+
title: "Inbound application callback channel",
|
|
18887
|
+
description: "WeCom Smart Bot, Feishu, and DingTalk have real inbound callbacks wired. Messages received by the external platform are dispatched only to explicitly selected AI employees.",
|
|
18888
|
+
howTo: "2. Configure the open-platform application and callback",
|
|
18889
|
+
configure: "3. Enter application credentials and service settings",
|
|
18890
|
+
employeesLabel: "AI employees allowed to serve externally",
|
|
18891
|
+
employeesHelp: "Inbound messages can invoke only AI employees explicitly selected here.",
|
|
18892
|
+
configHeader: "Open-platform application credentials (encrypted and never displayed again)",
|
|
18893
|
+
},
|
|
18894
|
+
inbound_adapter_pending: {
|
|
18895
|
+
title: "Inbound adapter not wired yet",
|
|
18896
|
+
description: "Slack and Teams configuration metadata can be saved, but this module does not yet have a live inbound message adapter. Saving does not mean production messages are reachable.",
|
|
18897
|
+
howTo: "2. Prepare the platform application configuration",
|
|
18898
|
+
configure: "3. Save the pending application configuration",
|
|
18899
|
+
employeesLabel: "AI employees planned for external service",
|
|
18900
|
+
employeesHelp: "This list becomes the inbound invocation boundary after the adapter is wired.",
|
|
18901
|
+
configHeader: "Platform application configuration (stored now; runtime wiring pending)",
|
|
18902
|
+
},
|
|
18903
|
+
embedded_web_chat: {
|
|
18904
|
+
title: "Embedded Web Chat integration",
|
|
18905
|
+
description: "Web Chat starts conversations from an embedded site component. It uses a site key, signing secret, and allowed origins rather than IM callback verification.",
|
|
18906
|
+
howTo: "2. Configure the Web Chat component",
|
|
18907
|
+
configure: "3. Enter site security settings",
|
|
18908
|
+
employeesLabel: "AI employees allowed to serve Web Chat",
|
|
18909
|
+
employeesHelp: "Web conversations can invoke only AI employees explicitly selected here.",
|
|
18910
|
+
configHeader: "Web component and allowed-origin settings",
|
|
18911
|
+
},
|
|
18912
|
+
authenticated_api: {
|
|
18913
|
+
title: "Authenticated API invocation",
|
|
18914
|
+
description: "API integration uses an API key and signing credentials to invoke platform capabilities. Callback URL is an optional event return target, not an inbound message callback.",
|
|
18915
|
+
howTo: "2. Create API invocation credentials",
|
|
18916
|
+
configure: "3. Enter API authentication and optional return settings",
|
|
18917
|
+
employeesLabel: "AI employees allowed for API invocation",
|
|
18918
|
+
employeesHelp: "API requests can invoke only AI employees explicitly authorized here.",
|
|
18919
|
+
configHeader: "API authentication credentials and optional event return URL",
|
|
18920
|
+
},
|
|
18921
|
+
outbound_webhook: {
|
|
18922
|
+
title: "Outbound Webhook message delivery",
|
|
18923
|
+
description: "Authorized AI employees proactively deliver messages to an external Webhook URL. It does not receive external messages or require callback verification.",
|
|
18924
|
+
howTo: "2. Prepare the external message delivery URL",
|
|
18925
|
+
configure: "3. Enter Webhook delivery settings",
|
|
18926
|
+
employeesLabel: "AI employees allowed to send messages",
|
|
18927
|
+
employeesHelp: "Only AI employees explicitly authorized here can send messages to this Webhook URL.",
|
|
18928
|
+
configHeader: "Complete Webhook URL provided by the external platform",
|
|
18929
|
+
},
|
|
18930
|
+
voice_channel: {
|
|
18931
|
+
title: "Phone Agent voice integration",
|
|
18932
|
+
description: "Phone Agent uses separate carrier, number, and compliance settings. Bind the AI employees allowed to answer or place calls here; operational settings remain owned by Telephony settings.",
|
|
18933
|
+
howTo: "2. Configure the voice provider and number",
|
|
18934
|
+
configure: "3. Enter agent account settings",
|
|
18935
|
+
employeesLabel: "AI employees allowed to answer or place calls",
|
|
18936
|
+
employeesHelp: "Phone tasks can invoke only AI employees explicitly authorized here.",
|
|
18937
|
+
configHeader: "Voice provider, number, and agent authentication settings",
|
|
18938
|
+
},
|
|
18939
|
+
},
|
|
18651
18940
|
nameLabel: "Name",
|
|
18652
18941
|
namePh: "e.g. Acme Robotics - Sales Group",
|
|
18653
18942
|
groupLabel: "Target group (optional)",
|
|
18654
18943
|
groupPh: "Group name or group ID -- can also be filled in later when connecting",
|
|
18655
18944
|
routingLabel: "Routing mode",
|
|
18656
|
-
routingTip: "Smart Routing matches source, group, employee, and priority. Dispatcher routing is the shared entry point. A specific-employee route always selects that employee.",
|
|
18657
18945
|
credsHeader: "Credentials (copy and paste from the platform console above; stored encrypted and never displayed again)",
|
|
18658
18946
|
keepSecret: "Already configured -- leave blank to keep unchanged",
|
|
18659
18947
|
pastePh: "Paste this value",
|
|
18660
18948
|
save: "Save",
|
|
18661
|
-
simExample: {
|
|
18662
|
-
salesPioneer: "Sales Pioneer, how should I follow up on the annual collaboration platform deal with Acme Manufacturing Group?",
|
|
18663
|
-
serviceSteward: "Customer Service Steward, what's the status of the damage refund for order ORD-2024-0892?",
|
|
18664
|
-
revenueAnalyst: "Revenue Analyst, what's this week's total pipeline value and weighted forecast?",
|
|
18665
|
-
opsCoach: "Ops Coach, which areas should the team focus on this week?",
|
|
18666
|
-
},
|
|
18667
18949
|
},
|
|
18668
18950
|
settingsRestPages: {
|
|
18669
18951
|
sopDetail: {
|
|
@@ -19407,6 +19689,14 @@ const messages = {
|
|
|
19407
19689
|
publishRequiresApproval: "Publishing requires approvalStatus approved or not_required; current approvalStatus is {approvalStatus}.",
|
|
19408
19690
|
draftActionsLocked: "Draft actions are locked because the current releaseGateStatus is {releaseGateStatus}.",
|
|
19409
19691
|
approvalActionUnavailable: "Approval action is unavailable because the current approvalStatus is {approvalStatus}.",
|
|
19692
|
+
agentChangeSummaryTitle: "Proposed improvements",
|
|
19693
|
+
agentChangeSummaryDescription: "This draft updates {count} employee behavior setting(s). You can simulate before publishing and roll back afterward.",
|
|
19694
|
+
agentPersonaLabel: "Role and communication style",
|
|
19695
|
+
agentPersonaHelp: "Changes the role, tone, and style the AI employee uses when collaborating with users.",
|
|
19696
|
+
agentInstructionsLabel: "Work instructions and approach",
|
|
19697
|
+
agentInstructionsHelp: "Changes the steps, priorities, and judgment the AI employee uses to complete work.",
|
|
19698
|
+
agentIdentityPolicyLabel: "Identity boundaries and constraints",
|
|
19699
|
+
agentIdentityPolicyHelp: "Clarifies what the AI employee may do, may not do, and when it must hand work to a person.",
|
|
19410
19700
|
},
|
|
19411
19701
|
table: {
|
|
19412
19702
|
tabRecommendations: "Recommendations",
|
|
@@ -19527,6 +19817,14 @@ const messages = {
|
|
|
19527
19817
|
operatingLoopTitle: "Autonomous Workforce Operating Loop",
|
|
19528
19818
|
operatingLoopSubtitle: "Discover automation opportunities in real work, then connect evidence, tests, approvals, and learning into one digital workforce operating system.",
|
|
19529
19819
|
operatingLoopAction: "Enter",
|
|
19820
|
+
operatingLoopActionByStage: {
|
|
19821
|
+
discover: "Review role gaps",
|
|
19822
|
+
hire: "Complete employee setup",
|
|
19823
|
+
prove: "Start evaluation",
|
|
19824
|
+
deploy: "Review deployment",
|
|
19825
|
+
learn: "Review learning evidence",
|
|
19826
|
+
improve: "Handle improvements",
|
|
19827
|
+
},
|
|
19530
19828
|
operatingLoopStage: {
|
|
19531
19829
|
discover: "Discover Work",
|
|
19532
19830
|
hire: "Hire Agents",
|
|
@@ -19673,6 +19971,28 @@ const messages = {
|
|
|
19673
19971
|
truncation: "Showing latest {shown} of {total}",
|
|
19674
19972
|
composerOpen: "+ Generate blueprint",
|
|
19675
19973
|
composerCancel: "Cancel",
|
|
19974
|
+
impact: "Impact",
|
|
19975
|
+
confidence: "Confidence",
|
|
19976
|
+
testCandidateCount: "{count} test candidate(s) are linked and will be checked by simulation and the release gate below.",
|
|
19977
|
+
nextStep: "Next step",
|
|
19978
|
+
noDraftTitle: "No actionable improvement draft yet",
|
|
19979
|
+
noDraftDescription: "This recommendation currently has evidence and an assessment, but it cannot be applied yet.",
|
|
19980
|
+
noDraftHowTitle: "How a draft is created",
|
|
19981
|
+
noDraftHowEvidence: "Keep using the relevant AI employee for similar work. The system automatically aggregates eligible, redacted evidence.",
|
|
19982
|
+
noDraftHowCandidate: "When the evidence volume, confidence, and target asset satisfy the rules, the system automatically creates a governed candidate draft; users do not create technical objects manually.",
|
|
19983
|
+
noDraftHowContinue: "After the draft is created, this page shows the Generate content, Simulate, and Submit for approval actions. To start immediately from a defined business goal, create a blueprint in Step 3, Blueprint drafts.",
|
|
19984
|
+
stageNavigation: "Learning improvement workflow",
|
|
19985
|
+
stageNumber: "Step {number}",
|
|
19986
|
+
selectItemHint: "Select an item on the left to see its details and the next available action.",
|
|
19987
|
+
evidenceOpenHint: "Select an evidence card on the left to inspect the source evidence.",
|
|
19988
|
+
cardNextStep: "Next",
|
|
19989
|
+
stageHint: {
|
|
19990
|
+
evidence: "Review what the system captured from real work.",
|
|
19991
|
+
recommendations: "Prioritize high-impact, uncertain, or gate-blocked recommendations.",
|
|
19992
|
+
blueprints: "Confirm the improvement goal, scope, and acceptance checks.",
|
|
19993
|
+
gate: "Check whether tests, approval, and rollback readiness are satisfied.",
|
|
19994
|
+
artifacts: "Review the draft artifacts produced by the workflow.",
|
|
19995
|
+
},
|
|
19676
19996
|
column: {
|
|
19677
19997
|
evidence: "Evidence",
|
|
19678
19998
|
recommendations: "Recommendations",
|