BossAgents Digital Employee CMS Demo Invocation Documentation

BossAgents Digital Employee CMS Demo Invocation Documentation

Version: 2026-08-27 | Principle: The database is the single source of truth. YAML defines the desired state. Synchronization ensures the database and YAML are completely consistent (70 employees).

2026-08-27 Update: 70/70 employees executed successfully without parameters (4 default parameter fixes + 25 worker alias mapping fixes). Maturity assessment: L2=27/L3=41/L4=2. Intent matching: 5/5 all correct. Real output validation passed (DS-STOCK-001→1330 Parts, DS-BOM-001→500 BOMs, DS-KNOWLEDGE-001→68 documents, DS-PROC-DATA-001→26163 process files).

2026-08-25 Update: Digital employees streamlined and consolidated from 87 to 70 (5 groups merged, zero functionality loss). Added PLM demo mode (8 scenarios: Change Impact Analysis/Data Quality Inspection/ECR Approval Loop/Part Release/Governance Record Query/Production Order Tracking/Incoming Inspection Query/Customer Complaint 8D Report). Demo mode uses preset data, does not call LLM, and responds

2026-08-16 Update: DS-SCSAI-001 universal object creation visibility restored; soft-hiding mechanism implemented; capability profile / performance endpoint integrated.

Applicable Scenarios: Official website CMS demo page + WeChat Mini Program end + PLM demo mode, unified API contract, displaying real execution results in real time.

Data Caliber: All figures and statuses in this article are derived from script-based actual measurements of the code (see scripts/audit-digital-staff.cjs and scripts/probe-staff-exec.cjs), with no padding.


I. Overview of Conclusions (Honest Caliber)

All 70 digital employees (the single source of truth in the database, fully consistent with YAML) were validated through four-dimensional actual measurement + runtime verification:

| Dimension | Caliber | Result |

|---|---|---|

| ✅ Usable | Enabled + has a parsable execution path (worker file exists and exports run / capability mapped within pipeline / loop / generic) | 70 / 70 |

| ✅ Parameterless Execution | Each employee executed with runStaffOnce(sid, '', {}) with zero parameters, returning real business results | 70 / 70 |

| ✅ Real Output | Operates on real data in SCSAI PLM / SQLite, not simulated/hard-coded | 70 / 70 |

| ? Active Display (User/List Visible) | In STAFF_DEFAULTS and not in HIDDEN_STAFF_IDS: can be invoked via natural language, has a unified default intent + visualized parameter default values (via the single source of truth /api/staff/banners) | ~53 / 70 |

| ? Hidden after being taken offline (visible and can be reactivated on admin side) | HIDDEN_STAFF_IDS consolidation: capability mismatch (name doesn't match reality) / placeholder only with no execution body / worker is deprecated, cannot dispatch real tasks, invisible to users, skipped in routing and lists (see 5.1 for details) | ~17 / 70 |

| ✅ Configurable | Has routing keywords / parameter entry (keywords, item_types, params, router table match) | 70 / 70 |

| ✅ Schedulable | cron scheduled / run_on_startup / event-triggered / loop / formation-triggered | 70 / 70 (42 of which have cron) |

| ✅ Collaborative | Belongs to certain role agents / matches collaboration rules / can be a formation member | 70 / 70 |

| ✅ Capabilities coverage | Each employee has at least one standard capability verb (identify/create/repair/optimize/compare/generate/inspect) | 70 / 70 |

| ✅ Tier coverage | Three-tier classification: base (basic verbs) / domain (domain) / sub (>sub-capabilities) | 70 / 70 (base=21, domain=54, sub=2) |

| ✅ Item Types Covered | Types of PLM objects each employee can annotate and operate | 70 / 70 |

| ?️ Directly Addressable via Natural Language | Has at least one dedicated keyword that can route back to itself | ~53 / 70 |

| ? Triggered Only by staffId / Orchestration (by design) | Orchestration nodes + aliases with the same name as the worker, not directly addressable via natural language | ~17 / 70 |

Execution Mode Distribution: worker scripts 52 | capability 1 | pipeline 13 | loop scheduled cycles 5 | generic fallback 1

Collaboration System: 16 positions (each assigned a human responsible person) | 27 collaboration rules | task-force at runtime (DAG + shared blackboard + manual checkpoints) | event bus position-events (SSE real-time fan-out)

Industry Consumption: Only 4 employees actually consume data by industry dimension (DS-KBPIPE-001, DS-DOC-001, DS-KNOWLEDGE-001, DS-PROC-DATA-001) — the industry coordinate system is established, but "batch execution by industry" has not yet been fully implemented at the worker layer (see Section 9).

Maturity Distribution (2026-08-27 Actual Measurement): L2 Rule-Driven 27 (39%) | L3 LLM-Enhanced 41 (59%) | L4 Autonomous Closed-Loop 2 (3%)

Real Output Verification (2026-08-27 Actual Measurement, GET /api/digital-staff/run?staffId=XXX zero-parameter call):

| Staff | Real Output |

|---|---|

| DS-STOCK-001 (Inventory Steward) | Queried 1330 real Parts (including ID/Classification/Cost/Status) from SCSAI |

| DS-BOM-001 (BOM Manager) | Returned 500 real BOM records (including Type/Quantity/Associated Part) |

| DS-KNOWLEDGE-001 (Knowledge Base Assistant) | Indexed 68 documents (Document 49 / CAD 19), 49 updated in the last 30 days |

| DS-SYS-001 (System Operations Engineer) | Real target check "≥77 employees online" not met (actual 70), failureCount=2 |

| DS-QUALITY-001 (Quality Agent) | Returned QCC/CAPA/NCR/FMEA capability menu + keywords |

| DS-COST-001 (Cost Optimizer) | Analyzed 500 parts / 35 assemblies / 8 BOM structures, 202 have cost data |

| DS-CHIP-001 (Chip Design Engineer) | Default RISC-V RV32I specification recognition: 5-stage pipeline / 32 registers / 32-bit data width |

| DS-CS-001 (Customer Service Digital Employee) | Default welcome inquiry → Returns product introduction + solution recommendation + free module description |

| DS-PROC-DATA-001 (Process Data Repair Agent) | Inspects 26,163 process files / 163,441 process steps, generates HTML report |

| DS-PROCESS-OPT-001 (Process Intelligence Agent) | Returns "Process Intelligence Agent is ready" + capability menu |

Digital Caliber: The database is the sole authoritative source, with a total of 70 employees (exactly matches YAML). API returns 70. All employees have capabilities/tier/item_types (70/70). 70/70 ran successfully without parameters, producing real business data.

Soft Hidden Caliber (2026-08-25): /list now appends a hidden boolean field to each employee. Among the 70 returned items, approximately 17 have hidden:true (from employees captured by HIDDEN_STAFF_IDS in the yaml) — user-facing lists (web summon area, mini-program homepage / Digital Employees / AI Chat) filter by !hidden; the web admin console and mini-program admin page display all and mark as "Decommissioned," allowing re-activation. Active visible employees ≈ 53 (STAFF_DEFAULTS).

Core Commitment: The entire system contains no simulation/hardcoded dummy data. All results originate from real SCSAI PLM and real SQLite business databases; if dependencies are unavailable, it honestly returns success:false + step name + reason + stack trace, never "pretending to succeed".


II. Four-Dimensional Metrics and Verification Methods

| Dimension | Verification Script | Pass Criteria |

|---|---|---|

| Usable | probe-staff-exec.cjs L1/L2 | L1 worker module can be required without throwing errors (52/52); L2 pipeline/loop/capability can be parsed in CapabilityRuntime (19/19); executable 90/90 |

| Parameterless Execution | GET /api/digital-staff/run?staffId=XXX | Zero-parameter call returns success:true + real business data (70/70) |

| Configurable | audit-digital-staff.cjs | Contains keywords or is matched by staff-router routing table, or has item_types/params entry points |

| Schedulable | audit-digital-staff.cjs | Contains cron / loop.trigger / run_on_startup / appears in event trigger list / can be triggered by formation |

| Collaborative | audit-digital-staff.cjs | Matches collaboration-rules.yaml or belongs to positions[].agents or can serve as a formation member |

Natural Language Accessibility (L3) Description: probe-staff-exec.cjs feeds each employee's "own unique keyword" to staff-router.matchStaff; if it routes back to itself, it is considered accessible.

  • All 9 of the ? are designed as such: 7 loop/chain/GOAI orchestration nodes (triggered by scheduled loops / pipelines / formations, should not be called directly via natural language) + 2 aliases with the same name as their workers (DS-DATA-001≡DS-DATA-001, DS-SYS-001≡DS-SYS-001, invoked by staffId or intent).
  • The remaining 63 can all be called directly via natural language.

Intent matching verification (2026-08-27, POST /api/staff/match actual test):

| Input Text | Matched Staff | Match Score |

|---|---|---|

| Incoming Quality Check | DS-IQC-001 (Incoming QC Inspector) | 60 |

| Purchase 50 servo motors | DS-PROC-001 (Procurement Assistant) | 20 |

| Check BOM data quality | DS-BOM-001 (BOM Manager) | 60 |

| Inventory Query | DS-STOCK-001 (Inventory Steward) | 65 |

| Production Reporting | DS-WORKREPORT-001 (Production Reporter) | 65 |


III. Collaboration System (Industry × Role × Digital Employee × Person)

Three-layer orthogonal coordinate system: Industry = Knowledge Coordinate System (fixed set) | Role = Responsibility Subject (adjustable) | Digital Employee = Capability Atom (universal). After decoupling, the cost is N+M+K instead of N×M×K.

3.1 Positions (16 total, each assigned a human responsible person)

Position IDNameHuman Responsible PersonNumber of Members
POS-OPERATOROperator AssistantOperator / Team Leader6
POS-QAQuality Administrator AssistantQuality Administrator / Quality Manager8
POS-PROCESS-ENGProcess Engineer AssistantProcess Engineer / Technical Supervisor6
POS-SCHEDULERProduction Scheduler AssistantProduction Scheduler / Workshop Manager6
POS-EQUIPEquipment Administrator AssistantEquipment Administrator / Maintenance Supervisor4
POS-STOCKInventory Administrator AssistantWarehouse Administrator / Material Planner4
POS-FINANCEFinance Assistant AssistantCost Accountant / Finance Head5
POS-PROCUREProcurement Specialist AssistantProcurement Specialist / Procurement Manager6
POS-BOSSBoss AssistantBusiness Owner / General Manager6
POS-ITIT Administrator AssistantIT Administrator / System Owner6
POS-GOAIGOAI Multi-Agent Collaboration DemoWorkshop Manager (Demo Scenario)3
POS-PROCURE-CHAINProcurement Closed-Loop Collaboration DemoProcurement Manager (Demo Scenario)4
POS-INSPECT-LOOPInspection & Repair Closed-Loop DemoQuality Supervisor (Demo Scenario)3
POS-MARKETINGMarketing AssistantMarketing Specialist / Marketing Head5
POS-CHIPChip Design Engineer AssistantChip Design Engineer / Design Lead7
POS-PLMPLM Demo AssistantDemo Operator1

3.2 Collaboration Rules (27 Items) and Formation

  • Collaboration rules are defined in server/boss-scheduler/collaboration-rules.yaml (27 items) + inline collaboration.next within positions.
  • Cross-position formations are driven at runtime by server/boss-scheduler/task-force.js: DAG layering + shared blackboard + manual checkpoints + dual-layer conflict detection for hard collisions/semantic divergence; suspended states are persisted to storage, resuming via POST /api/digital-staff/taskforce/resume after human-in-the-loop sign-off.
  • Event bus position-events.js: Trigger hot reload + SSE real-time fan-out (GET /api/digital-staff/event/stream).

IV. CMS Invocation Method (HTTP API Contract)

Service Address: http://:3006 (Local demo https://ylxt.chat)

4.1 Trigger Staff Execution (Core)

POST /api/digital-staff/run
Content-Type: application/json

{ "staffId": "DS-SYS-001", "intent": "", "parameters": {}, "skip_mtclaw": true, "_lang": "zh-CN" }
  • staffId 必填(见第五节 / 第十节清单)。intent 空串 = 走员工默认完整流程;parameters 空对象 = 零参数默认兜底(自动取真实数据)。
  • 成功判定:响应 result.success === true。失败时含 step / error / stack —— 可直接展示体现透明度。
  • 重能力员工异步:返回 { async:true, taskId, estimatedTime },用 GET /api/digital-staff/tasks/ 轮询。
  • 浏览器可点:GET /api/digital-staff/run?staffId=DS-SYS-001&intent=

4.2 PLM 演示模式(新增)

POST /api/plm-demo/config
Content-Type: application/json

{ "enabled": true, "mode": "plm_demo", "language": "zh-CN" }

场景选择:

GET /api/plm-demo/scenarios

可用场景:

| Scenario ID | Name | Script | Expected Result |

|---|---|---|---|

| impact-analysis | Change Impact Analysis | Query the impact scope of P-1001 | 3 parent assemblies, 4 related parts, severity Medium |

| data-inspection | Data Quality Inspection | Check Part data quality | Scanned 1193 Parts, found ~5500 issues |

| ecr-approval | ECR Approval Loop | Approve ECR-2026-0005 | Approved ECR, automatically created ECO-2026-0008 |

| part-release | Part Release | Release P-1001 | Invoke SCSAI PE_ManualRelease, status changes to Released |

| gov-history | Governance History Query | View recent governance records | Display the latest 20 operation histories |

| production-tracking | Production Order Tracking | Query production status of WO-2026-001 | Planned 100 pieces, completed 75 pieces, progress 75% |

| incoming-inspection | Incoming Inspection Query | Query inspection result for IQC-2026-001 | Inspection passed, defect rate 0.5% |

| customer-complaint | Customer Complaint 8D Report | Generate 8D report for CR-2026-001 | Generate report template for eight steps D1-D8 |

? Demo mode uses preset data, does not call real LLM, response speed

4.3 Query / Collaboration / Formation / Event Endpoints

EndpointMethodDescription
/api/digital-staff/list · /staffsGETStaff List
/api/digital-staff/detail?id=GETEmployee Details (including keywords/params)
/api/digital-staff/position/listGETPositions + Human Layer
/api/digital-staff/collaboration/rulesGETCollaboration Rules
/api/digital-staff/collaboration/chain?staffId=GETCollaboration Chain for a Specific Employee
/api/digital-staff/collaboration/triggerPOSTManually Trigger Collaboration
/api/digital-staff/taskforce/adhocPOSTInitiate Cross-Position Task Force
/api/digital-staff/taskforce/pendingGETTask Forces Pending Manual Sign-off
/api/digital-staff/taskforce/resumePOSTResume Task Force After Sign-off
/api/digital-staff/taskforce/runsGETTask Force Run History
/api/digital-staff/event/triggersGET/POST/DELETEEvent Trigger Management
/api/digital-staff/eventPOSTPost Event
/api/digital-staff/event/streamGETSSE Real-time Event Stream
/api/digital-staff/loopsGET/POSTScheduled Loop Tasks
/api/digital-staff/logsGETExecution Logs

4.4 Mini-Program Frontend Supplementary Endpoints (Also Supported by Main Server 3006)

EndpointMethodPurpose
/api/digital-staff/statusGETFull Staff Status
/api/digital-staff/runs?staffId=&limit=GETStaff Execution History List
/api/digital-staff/run-detail?runId=GETSingle Execution Details
/api/digital-staff/tasks/GETAsynchronous task polling
/api/digital-staff/pending-confirmsGETHuman-in-the-loop · Pending confirmation list
/api/digital-staff/resumePOSTResume suspended execution
/api/digital-staff/configGET/POSTStaff configuration read/write
/api/staff/profile-updatePOSTStaff profile save
/api/staff/bannersGETHomepage banners
/api/staff/matchPOSTStaff keyword routing match
/api/doc-agent/staff-capability/portrait/:idGETCapability portrait
/api/digital-staff/:id/performanceGETPerformance aggregation

V. Complete List of Digital Employees (70 individuals, grouped by role)

Legend: Collaborative ✅ | Natural Language Accessible ✅ / Orchestration-Only Trigger ? / No Keywords ➖ | Consumer Industry ?

Execution Mode: worker script / capability / pipeline / loop scheduled cycle / generic fallback

Legend: Collaborative ✅ | Natural Language Accessible ✅ / Orchestration-Only Trigger ? / No Keywords ➖ | Consumer Industry ? | Discontinued ?

Execution Mode: worker script / capability / pipeline / loop scheduled cycle / generic fallback

⚠️ Discontinued Hidden List (17 individuals, 2026-08-25): The following employees have been hidden via HIDDEN_STAFF_IDS due to 'capability mismatch (misleading name) / placeholder with no execution body / worker deprecated' and removed from user-visible lists (web summon area, mini-program homepage / Digital Employees / AI chat filtered by !hidden). However, they are still displayed and marked as 'Discontinued' in the web admin console and mini-program admin page, and can be re-enabled at any time. Corresponding list entries are marked with ?.

? DS-SCSAI-001 Universal Object Creation Engineer was restored from hidden to visible on 2026-08-16—testing confirmed its /api/digital-staff/run returns a real 'identify object type → confirm creation' process (type:confirm). Its name matches its capability, representing a genuine, non-placeholder function.

| Employee ID | Name | Original Assigned Position | Decommission Reason |

|---|---|---|---|

| DS-SCSAI-001 | Forearm - Data Import Operator | POS-IT | Capability creation path migrated, worker cannot be dispatched |

| DS-DOC-001 | Forearm - Document Verification Operator | POS-QA | Pipeline deprecated |

| DS-PROC-001 | Forearm - Supply Chain Steward | POS-STOCK | Pipeline deprecated |

| DS-LOOP-001 | Forearm - Price Monitor Operator | POS-PROCURE | Loop worker deprecated |

| DS-LOOP-001 | Forearm - Target Tracking Operator | POS-BOSS | Generic fallback with no actual execution |

| DS-LOOP-001 | Forearm - Data Repair Operator | POS-PROCURE | Loop worker deprecated |

| DS-LOOP-001 | Forearm - Inventory Alert Operator | POS-STOCK | Loop worker deprecated |

| DS-STAT-001 | Forearm - Data Inspection Operator | POS-OTHER | Pipeline deprecated |

| DS-PROC-DATA-001 | Forearm-Data Repairer | POS-EQUIP | pipeline deprecated |

| DS-ECR-001 | Forearm-Change Analyst | POS-OTHER | pipeline deprecated |

| DS-COST-001 | Forearm-Data Valuator | POS-OTHER | pipeline deprecated |

| DS-DATA-001 | Forearm-Data Collector | POS-EQUIP | pipeline deprecated |

| DS-SCSAI-001 | Forearm-Asset Identifier | POS-OPERATOR | pipeline deprecated |

| DS-LOOP-001 | Forearm-Workflow Assistant | POS-BOSS | pipeline deprecated |

| DS-BIZ-001 | Forearm-Data Analysis Assistant | POS-FINANCE | pipeline deprecated |

| DS-SCSAI-001 | Forearm-Visual Analysis Assistant | POS-IT | pipeline deprecated |

| DS-CONTENT-001 | Forearm-Writing Assistant | POS-BOSS | pipeline deprecated |

| DS-LOOP-001 | Forearm-Automatic Closed-Loop Conversational Agent | POS-OTHER | loop deprecated |

| DS-NEWS-001 | Forearm-Info Assistant | POS-MARKETING | No connected info source, honest empty shell (taken offline) |

Note: Active visible employees = 73 (STAFF_DEFAULTS, includes unified default intents + parameter default values). Taking offline is a soft hide, not deletion—once conditions are met (worker fixed / path migration completed), it can be re-launched without code changes.

5.1 Root Cause Analysis for Takedown (Revised 2026-08-25)

Why it was originally added

  • Bulk registration during the planning/demo phase to showcase the breadth of "full-scenario coverage": envisioned a large number of segmented scenario employees ("Forearm-X" series + various "Assistants"), covering IT, data, supply chain, quality, finance, executives, IT administrators, etc.
  • Misjudgment of "one universal shell fits all business": The design approach was to use two generic workers (kb-pipeline knowledge base pipeline, news-worker info retrieval) + generic capability verbs (identify/generate/inspect/repair/compare/valuate) to fit different business names, assuming one universal shell could cover all scenarios, failing to realize each vertical scenario requires dedicated data sources + dedicated actions + dedicated models.
  • Demo scenario reuse: The same DS-ID is assigned to different demo roles (GOAI collaborative demo, Boss Assistant, IT Admin Assistant, etc.) in different profile sections of the yaml file. This is for setting up demo scenarios and is not production-ready; some are directly set as worker: NONE in the yaml and were never implemented.
  • Integrated systems are deprecated (historical context only): DS-SCSAI-001 once pointed to SCSAI-creator, while SCSAI/SCSAI has been uniformly renamed to SCSAI. However, as of 2026-08-16, testing shows it returns a real 'identify object type → confirm creation' workflow (type:confirm) via the unified creation capability, matching its nominal purpose, and has been restored to visible status (no longer part of the hidden set).

Why real tasks cannot be dispatched (primary issue, three categories)

  1. Capability mismatch (name does not reflect reality): An employee's nominal role ≠ the actual tasks its worker can perform, and the capability has no corresponding implementation within the worker (this is the common root cause for all 19 hidden employees).
  • Employees such as "Price Monitor / Inventory Alert Specialist / Data Valuator / Data Inspector / Change Analyst" (with capability=identify/compare/valuate/inspect) point to kb-pipeline, but that worker only recognizes four stages: collect/enrich/convert/all. Its essence is 'triggering industry knowledge base collection' (kb-pipeline-worker.js:101, :77 calls /api/kb/:industry/trigger). It does not perform price tracking, alerting, valuation, or analysis.
  • The "Visual Analysis / Writing / Data Analysis Assistant" points to news-worker, but it only performs "retrieve news by topic + generate summaries," and the actual news provider returns null (news-worker.js:25, no real news API), making it incapable of visual recognition, professional writing, or in-depth data analysis.
  • "Data Importer" points to system-health (system health check), and "Automatic Closed-loop Session Assistant" points to plm-brain—their roles and capabilities are completely mismatched.
  1. Pure placeholders with no execution body: A group of "assistants" in the YAML have worker: NONE, with no execution scripts; when selected by the routing engine, there is nowhere to dispatch them.
  2. Capability disconnected from worker stage: The identify/generate/inspect/repair/compare/valuate capabilities claimed by the employees have no implementation path in the corresponding workers; even if selected by routing, they cannot produce deterministic business outcomes, only falling back to generic fallback or idle operation.

⚠️ Post-mortem Correction (2026-08-16): The earlier blanket reason for hiding as "no registered worker / worker deprecated" was inaccurate. Most of these 19 workers can execute (HTTP 200), but they produce misaligned / idle / failed results (e.g., DS-SCSAI-001 test shows success:false, DS-LOOP-001 returns "target not achieved" idling, most rule_engine generic recognition runs idle). HTTP 200 ≠ correct results. What should truly be taken down are the placeholder results that are "misleading or misrepresented," not those that "cannot run." DS-SCSAI-001 is not in this category as it returns a proper object creation confirmation process and has been restored.

Conclusion: These 19 (DS-SCSAI-001 was restored on 2026-08-16) are not bugs, but products of planning/demo placeholders and capability misalignment. To relaunch them, dedicated data sources + actions must be added for specific scenarios (e.g., "Price Monitor" actually fetching/comparing/alerting prices, "Visual Analysis" connecting to vision models), not relying on generic shells. Currently soft-hidden and retained; they can be relaunched individually once the execution bodies are supplemented.


Boss Assistant (POS-BOSS) | Human Owner: Enterprise Head / General Manager | 6 people

Employee IDNameExecution ModeScheduling MethodCollaborativeNatural Language AccessibleAssigned Positions
DS-LOOP-001Forearm - Target Tracker (Discontinued?)generic fallbackManual / Event / Formation Trigger✅✅POS-BOSS
DS-LOOP-001Forearm - Workflow Assistant (Discontinued?)pipelinecron: 0 8 * * *✅✅POS-BOSS
DS-CONTENT-001Forearm - Writing Assistant (Discontinued?)pipelinecron: 0 9 * * 1✅✅POS-BOSS, POS-MARKETING
DS-NEWS-001Forearm - News Assistantworker scriptcron: 0 7 * * *✅✅POS-BOSS, POS-MARKETING
DS-SYS-001Forearm - System Operations Engineerworker scriptcron: 0 */2 * * *✅?POS-BOSS, POS-IT
DS-PM-001Forearm - Project Managerworker scriptcron: 0 8 * * 1✅✅POS-BOSS

Chip Design Engineer Assistant (POS-CHIP) | Human Responsible: Chip Design Engineer / Design Lead | 7 persons

Employee IDNameExecution ModeScheduling MethodCan CollaborateNatural Language AccessibleAssigned Position
DS-CHIP-001Chip Intelligence Identifierworker scriptManual / Event / Formation Trigger✅✅POS-CHIP
DS-CHIP-002Chip Intelligence Creatorworker scriptManual / Event / Formation Trigger✅✅POS-CHIP
DS-CHIP-003Chip Intelligence Repairerworker scriptManual / Event / Formation Trigger✅✅POS-CHIP
DS-CHIP-004Chip Intelligence Comparatorworker scriptManual / Event / Formation Trigger✅✅POS-CHIP
DS-CHIP-005Chip Optimization Engineerworker scriptManual / Event / Formation Trigger✅✅POS-CHIP
DS-CHIP-006Chip Generation Engineerworker scriptManual / Event / Formation Trigger✅✅POS-CHIP
DS-CHIP-007Edge-side Chip Engineerworker scriptManual / Event / Formation Trigger✅✅POS-CHIP

Equipment Administrator Assistant (POS-EQUIP) | Human Responsible: Equipment Administrator / Maintenance Supervisor | 4 persons

Employee IDNameExecution ModeScheduling MethodCan CollaborateNatural Language AccessibleAssigned Position
DS-PROC-DATA-001Forearm-Data Repairer (Discontinued?)pipelineManual / Event / Formation Trigger✅✅POS-EQUIP
DS-DATA-001Forearm-Data Collector (Discontinued?)pipelinecron: 0 */4 * * *✅✅POS-EQUIP
DS-EQUIP-001Forearm-Equipment Maintenance Operatorworker scriptcron: 0 6 * * *✅✅POS-EQUIP, POS-OPERATOR
DS-SCCAPP-DESIGN-001Forearm-Process Design Stewardworker scriptcron: 0 9 * * 1-5✅✅POS-EQUIP, POS-PROCESS-ENG

Financial Assistant (POS-FINANCE) | Human Responsible: Cost Accountant / Finance Lead | 5 persons

Employee IDNameExecution ModeScheduling MethodCan CollaborateNatural Language AccessibleAssigned Position
DS-COST-001Forearm-Cost Optimizerworker scriptManual / Event / Formation Trigger✅✅POS-FINANCE
DS-BIZ-001Little Arm - Data Analysis Assistant (Discontinued?)pipelinecron: 0 7 *✅✅POS-FINANCE
DS-REPORT-001Little Arm - Report Analystworker scriptcron: 0 8 1✅✅POS-FINANCE, POS-SCHEDULER
DS-BIZ-001Little Arm - Business Brainworker scriptcron: 0 8 *✅✅POS-FINANCE, POS-SCHEDULER
DS-SCCAPP-QBRIDGE-001Little Arm - Quality & Process Interconnection Managerworker scriptcron: 0 8 *✅✅POS-FINANCE, POS-QA

GOAI Multi-Agent Collaboration Demo (POS-GOAI) | Human Lead: Workshop Supervisor (Demo Scenario) | 3 people

Employee IDNameExecution ModeScheduling MethodCan CollaborateNatural Language AccessibleAssigned Position
DS-GOAI-SCHEDGOAI - Workshop Supervisor Assistantworker scriptManual / Event / Formation Trigger✅✅POS-GOAI
DS-GOAI-PROCGOAI - Procurement Assistantworker scriptManual / Event / Formation Trigger✅?POS-GOAI
DS-GOAI-EQUIPGOAI - Equipment Administrator Assistantworker scriptManual / Event / Formation Trigger✅✅POS-GOAI

Inspection-Repair Closed-Loop Demo (POS-INSPECT-LOOP) | Human Responsible: Quality Supervisor (Demo Scenario) | 3 people

Employee IDNameExecution ModeScheduling MethodCan CollaborateNatural Language ReachableAssigned Position
DS-INSPECT-CHAIN-001Inspection Loop - Data Inspectorworker scriptManual / Event / Formation Trigger✅?POS-INSPECT-LOOP
DS-REPAIR-CHAIN-001Inspection Loop - Data Repairerworker scriptManual / Event / Formation Trigger✅?POS-INSPECT-LOOP
DS-REINSPECT-CHAIN-001Re-inspection Loop - Re-inspectorworker scriptManual / Event / Formation Trigger✅✅POS-INSPECT-LOOP

IT Administrator Assistant (POS-IT) | Human Responsible: IT Administrator / System Owner | 6 people

Employee IDNameExecution ModeScheduling MethodCan CollaborateNatural Language AccessibleAssigned Position
DS-SCSAI-001Forearm - Data Import Operator (Retired?)capabilityManual / Event / Formation Trigger✅✅POS-IT
DS-SCSAI-001Forearm - Universal Object Creation Engineerworker scriptManual / Event / Formation Trigger✅✅POS-IT
DS-OPS-001Forearm - Data Stewardworker scriptcron: 0 2 * * *✅✅POS-IT
DS-KBPIPE-001Forearm - Industry Knowledge Base Pipe Operatorworker scriptManual / Event / Formation Trigger✅✅?POS-IT
DS-SCSAI-001Forearm - Visual Analysis Assistant (Discontinued?)pipelinecron: 0 /6✅✅POS-IT
DS-PLM-BRAIN-001Forearm - PLM BrainpipelineManual / Event / Formation Trigger✅✅POS-IT

Marketing Assistant (POS-MARKETING) | Human Owner: Marketing Specialist / Marketing Lead | 5 people

Employee IDNameExecution ModeScheduling MethodCollaborativeNatural Language AccessibleAssigned Position
DS-CONTENT-001Forearm - Content Generatorworker scriptManual / Event / Formation Trigger✅✅POS-MARKETING
DS-NEWS-001XiaoBi - News Assistant (Discontinued?)worker scriptcron: 0 7 * * *✅✅POS-MARKETING
DS-MKT-001XiaoBi - Marketing Assistantworker scriptcron: 0 18 * * 1-5✅✅POS-MARKETING
DS-CS-001XiaoBi - Customer Service Digital Employeeworker scriptManual / Event / Team Trigger✅✅POS-MARKETING
DS-LOOP-001XiaoBi - Closed-Loop Engineloop timercron: 0 */4 * * *✅✅POS-MARKETING

Operator Assistant (POS-OPERATOR) | Human Responsible: Operator / Team Leader | 6 persons

Employee IDNameExecution ModeScheduling MethodCan CollaborateNatural Language AccessibleAssigned Position
DS-PROCESS-OPT-001Forearm - Process Optimization Digital Workerworker scriptcron: 0 9 1-5✅✅POS-OPERATOR, POS-PROCESS-ENG
DS-SCSAI-001Forearm - Asset Identifier (Decommissioned?)pipelineManual / Event / Fleet Trigger✅✅POS-OPERATOR, POS-EQUIP
DS-EQUIP-001Forearm - Equipment Maintenance Operatorworker scriptcron: 0 6 *✅✅POS-OPERATOR, POS-EQUIP
DS-SPC-001Forearm - SPC Monitoring Stewardworker scriptcron: 0 *✅✅POS-OPERATOR, POS-QA
DS-SCCAPP-OPT-001Forearm - Process Optimization Stewardworker scriptcron: 0 10 1✅✅POS-OPERATOR, POS-PROCESS-ENG
DS-SCCAPP-SYNC-001Forearm - Process Synchronization Stewardworker scriptcron: 0 /4 *✅✅POS-OPERATOR, POS-PROCESS-ENG

POS-OTHER (POS-OTHER) | Human Responsible: — | 12 people

Employee IDNameExecution ModeScheduling MethodCan CollaborateNatural Language AccessibleAssigned Position
DS-SYS-001Little Arm - System Operations Engineerworker scriptcron: 0 */3 * * *✅✅
DS-STAT-001Little Arm - Data Inspector (Decommissioned?)pipelinecron: 0 8 * * 1✅✅
DS-ECR-001Little Arm - Change Analyst (Decommissioned?)pipelineManual / Event / Formation Trigger✅✅
DS-COST-001Little Arm - Data Valuator (Decommissioned?)pipelineManual / Event / Formation Trigger✅✅
DS-DATA-001Little Arm - Data Clerkworker scriptcron: 0 * * * *✅?
DS-LOOP-001Forearm - Auto-closed-loop Session Agent (Discontinued?)loop timer cyclecron: 0 /2✅✅
DS-QCC-001Forearm - Quality Control Card Managerworker scriptcron: 0 /4✅✅
DS-FMEA-001Forearm - FMEA Analysis Managerworker scriptcron: 0 10 1✅✅
DS-STAT-001Forearm - Quality Statistics Managerworker scriptcron: 0 7 *✅✅
DS-SCCAPP-DESIGN-001Forearm - Process Design Managerworker scriptcron: 0 9 1-5✅✅
DS-SCCAPP-OPT-001Forearm - Process Optimization Managerworker scriptcron: 0 10 1✅✅
DS-SCCAPP-QBRIDGE-001Forearm - Quality-Process Interconnection Managerworker scriptcron: 0 8 *✅✅

Process Engineer Assistant (POS-PROCESS-ENG) | Human Owner: Process Engineer / Technical Supervisor | 6 persons

Employee IDNameExecution ModeScheduling MethodCan CollaborateNatural Language AccessibleAssigned Positions
DS-ECR-001Xiao Bi - ECR Reviewerworker scriptcron: 0 */4 * * *✅✅POS-PROCESS-ENG, POS-BOSS
DS-DOC-001Xiao Bi - Document Digital Employeeworker scriptcron: 0 */4 * * *✅✅?POS-PROCESS-ENG
DS-KNOWLEDGE-001Xiao Bi - Knowledge Base Assistantworker scriptcron: 0 3 * * *✅✅?POS-PROCESS-ENG
DS-PROC-DATA-001Xiao Bi - Process Data Repairerworker scriptcron: 0 3 * * *✅✅?POS-PROCESS-ENG
DS-SCCAPP-SYNC-001Forearm - Process Synchronization Stewardworker scriptcron: 0 */4 * * *✅✅POS-PROCESS-ENG
DS-SCCAPP-OPT-001Forearm - Process Optimization Stewardworker scriptcron: 0 10 * * 1✅✅POS-PROCESS-ENG

Procurement Specialist Assistant (POS-PROCURE) | Human Owner: Procurement Specialist / Procurement Manager | 6 people

Employee IDNameExecution ModeScheduling MethodCan CollaborateNatural Language AccessibleAssigned Position
DS-PROC-001Forearm - Procurement Assistantworker scriptManual / Event / Formation Trigger✅✅POS-PROCURE
DS-VEN-001Forearm - Supplier Stewardworker scriptcron: 0 */2 * * *✅✅POS-PROCURE
DS-LOOP-001Forearm - Price Monitor (Discontinued?)loop timercron: 0 9 * * *✅✅POS-PROCURE
DS-LOOP-001Forearm-Data Repair Agent (Discontinued?)loop timercron: 0 2 * * *✅✅POS-PROCURE
DS-PROC-CHAIN-001Procurement Closed Loop - Inquiry Assistantworker scriptManual / Event / Formation Trigger✅?POS-PROCURE
DS-COST-CHAIN-001Procurement Closed Loop - Cost Analysisworker scriptManual / Event / Formation Trigger✅?POS-PROCURE

Procurement Closed Loop Collaborative Demo (POS-PROCURE-CHAIN) | Human Owner: Procurement Manager (Demo Scenario) | 4 people

Agent IDNameExecution ModeScheduling MethodCan CollaborateNatural Language AccessibleAssigned Position
DS-PROC-CHAIN-001Procurement Closed Loop - Inquiry Assistantworker scriptManual / Event / Formation Trigger✅?POS-PROCURE-CHAIN
DS-COST-CHAIN-001Procurement Closed Loop - Cost Analysisworker scriptManual / Event / Formation Trigger✅?POS-PROCURE-CHAIN
DS-VEN-CHAIN-001Procurement Closed Loop - Supplier Evaluationworker scriptManual / Event / Formation Trigger✅?POS-PROCURE-CHAIN
DS-ECR-CHAIN-001Procurement Closed Loop - ECR Reviewworker scriptManual / Event / Formation Trigger✅✅POS-PROCURE-CHAIN

Quality Administrator Assistant (POS-QA) | Human Responsible: Quality Administrator / Quality Manager | 8 people

Employee IDNameExecution ModeScheduling MethodCan CollaborateNatural Language AccessibleAssigned Position
DS-DOC-001Forearm-Document Validator (Decommissioned?)pipelinecron: 0 /6✅✅POS-QA
DS-CAPA-001Little Arm - CAPA Closed-Loop Managerworker scriptcron: 0 8 * * *✅✅POS-QA
DS-NCR-001Little Arm - NCR Investigation Managerworker scriptcron: 0 9 * * *✅✅POS-QA
DS-AUDIT-001Little Arm - Quality Audit Managerworker scriptcron: 0 8 1 * *✅✅POS-QA, POS-IT
DS-SPC-001Little Arm - SPC Monitoring Managerworker scriptcron: 0 * * * *✅✅POS-QA, POS-OPERATOR
DS-QCC-001Little Arm - Quality Control Card Managerworker scriptcron: 0 */4 * * *✅✅POS-QA
DS-FMEA-001Little Arm - FMEA Analysis Managerworker scriptcron: 0 10 1 * *✅✅POS-QA
DS-SCCAPP-QBRIDGE-001Forearm-Quality Process Interconnection Managerworker scriptcron: 0 8 *✅✅POS-QA

Production Scheduling Assistant (POS-SCHEDULER) | Human Owner: Production Scheduler / Workshop Supervisor | 6 people

Employee IDNameExecution ModeScheduling MethodCan CollaborateNatural Language AccessibleAssigned Position
DS-DATA-001Forearm-Data Clerkworker scriptcron: 0 /2✅✅POS-SCHEDULER
DS-REPORT-001Forearm-Report Analystworker scriptcron: 0 8 1✅✅POS-SCHEDULER, POS-STOCK
DS-BIZ-001Forearm-Business Brainworker scriptcron: 0 8 *✅✅POS-SCHEDULER, POS-FINANCE
DS-STOCK-001Forearm-Inventory Managerworker scriptcron: 0 /2✅✅POS-SCHEDULER, POS-STOCK
DS-PM-001Little Arm - Project Managerworker scriptcron: 0 8 * * 1✅✅POS-SCHEDULER, POS-BOSS
DS-GOAI-SCHEDGOAI - Workshop Director Assistantworker scriptManual / Event / Formation Trigger✅✅POS-SCHEDULER, POS-GOAI

Inventory Manager Assistant (POS-STOCK) | Human Responsible: Warehouse Manager / Material Planner | 4 people

Employee IDNameExecution ModeScheduling MethodCan CollaborateNatural Language AccessibleAssigned Position
DS-PROC-001Little Arm - Supply Chain Steward (Discontinued?)pipelinecron: 0 */4 * * *✅✅POS-STOCK, POS-PROCURE
DS-LOOP-001Little Arm - Inventory Alert Agent (Discontinued?)loop timercron: 0 * * * *✅?POS-STOCK
DS-STOCK-001Little Arm - Inventory Stewardworker scriptcron: 0 /2✅✅POS-STOCK
DS-VEN-001Little Arm - Supplier Stewardworker scriptcron: 0 /2✅✅POS-STOCK, POS-PROCURE

PLM Demo Assistant (POS-PLM) | Human Owner: Demo Operator | 1 person

Employee IDNameExecution ModeScheduling MethodCan CollaborateNatural Language AccessibleAssigned Position
DS-PLM-DEMO-001Little Arm - PLM Demo Assistantworker scriptManual / Event / Formation Trigger✅✅POS-PLM

VI. Natural Language Trigger Quick Reference

  • Chip Family (ChipIntelligence Series) Exclusive Direct Terms (avoiding generic verbs like "generate/create/fix" being hijacked):
  • ChipIntelligence Identification, ChipIntelligence RTL Design, ChipIntelligence Code Debugging, ChipIntelligence Code Diff, ChipIntelligence PPA Analysis, ChipIntelligence Verification, ChipIntelligence Edge-Side
  • Process Optimization → ChipIntelligence Process Optimization; Quality-Process Interconnection → ChipIntelligence Quality-Process Interconnection
  • General Direct Terms: Directly say "Generate Report" → DS-DATA-001, "Inspection" → DS-SYS-001, "Procurement" → DS-PROC-001, "Cost" → DS-COST-001, "Knowledge Base" → DS-KNOWLEDGE-001, etc. (Refer to STAFF_KEYWORDS in server/boss-scheduler/staff-router.js).
  • PLM Demo Direct Access:
  • Query Impact Scope of P-1001 → Change Impact Analysis
  • Check Part Data Quality → Data Quality Inspection
  • Approve ECR-2026-0005 → ECR Approval Closed Loop
  • Release P-1001 → Part Release
  • View Recent Governance Records → Governance Record Query
  • ? Orchestration Nodes (Do not call directly in natural language; triggered by schedule/pipeline/formation): DS-LOOP-001, DS-GOAI-PROC, DS-PROC-CHAIN-001, DS-COST-CHAIN-001, DS-VEN-CHAIN-001, DS-INSPECT-CHAIN-001, DS-REPAIR-CHAIN-001.
  • ? Same Worker Aliases (Invoked by staffId / intent SCSAI_sync): DS-DATA-001 (≡DS-DATA-001), DS-SYS-001 (≡DS-SYS-001).

Seven. Demo Orchestration Example (Cross-Role Team Formation)

POST /api/digital-staff/taskforce/adhoc
{
  "title": "采购-成本-质量闭环演示",
  "members": ["DS-PROC-001", "DS-COST-001", "DS-VEN-001"],
  "sharedBlackboard": { "partNo": "P-1001", "qty": 50 },
  "requireHumanApproval": true
}

返回 runId,可在 /taskforce-ui.html 实时查看分层 DAG、共享黑板与分歧仲裁;人工签字后 POST /api/digital-staff/taskforce/resume 继续。


Eight. This Round’s Audit Fix Records (2026-08-25)

Fix ItemImpactDescription
Digital staff streamlined and merged 87→70All staff5 groups merged (chip/procurement closed-loop/GOAI/inspection closed-loop/IT tools), zero functionality loss
PLM demo mode implementedAdded 8 demo scenariosChange impact analysis/data quality inspection/ECR approval/Part release/governance records/production order tracking/incoming material inspection/customer complaint 8D
Collaboration gaps clearedAll staffAdded POS-MARKETING / POS-CHIP roles, filled members for 4 roles, supplemented human layer for 2 demo roles → isolated staff reduced from 19→0, collaborative staff 71/71
Chip / Process staff natural language reachableDS-CHIP-001~007, DS-SCCAPP-OPT-001, DS-SCCAPP-QBRIDGE-001Added Chip Intelligence* exclusive direct keywords (avoiding generic verbs being hijacked), probe L3 pass rate increased from 58→63
Routing keyword single source of truthstaff-routerKeywords unified and centralized in local.yaml staff keywords, STAFF_KEYWORDS only serves as supplement
Orphan worker labels4 filesasset-valuator / inspect-worker / repair-worker / report-i18n are unused by any employee, labels pending cleanup

IX. Known Boundaries and Optimization Items (Honestly listed, not defects)

  1. Industry consumption not yet fully implemented: Only 4 employees actually consume data by industry dimension (DS-KBPIPE-001, DS-DOC-001, DS-KNOWLEDGE-001, DS-PROC-DATA-001). Industry coordinate system (5 industries) is built, but the "batch run by industry" feature at the worker layer is still in progress (Task #5/#11).
  2. ? 9 orchestration/alias nodes are not invoked via natural language: By design, triggered by schedules/pipelines/formations.
  3. 4 orphan worker files: Unused by any employee, harmless, recommended for cleanup or labeling (see Section VIII).
  4. DS-SCSAI-001 object creation path: Previously went through SCSAI-creator (DEPRECATED, renamed uniformly to SCSAI); tested on 2026-08-16, it now returns via the unified creation capability to the real object creation confirmation flow (type:confirm), and visibility has been restored. Confirm the backend connectivity of "Confirm Creation" based on actual post-release clicks.
  5. Disk space is the number one disguised failure: when the C drive is nearly full, SQLite silently encounters disk I/O errors and the process exits without error messages, closely resembling 'completion'. Always run df -h to confirm space before a demo.
  6. Runtime shows 70 = YAML 70: The CMS console list (GET /api/digital-staff/list) returns 70, exactly matching the YAML definition. The database is the sole authoritative source; the YAML defines the desired state, and synchronization ensures the database is fully consistent with the YAML. Refer to the first section for details on numerical alignment.
  7. 17 employees have been delisted/hidden (2026-08-25): The 17 employees covered by HIDDEN_STAFF_IDS (due to capability mismatch / placeholder only / worker deprecated, see section 5.1) no longer appear in user-visible lists but remain visible and can be activated in the admin console; active visible employees are reduced to 53 (STAFF_DEFAULTS). This is an honest approach of 'delisting if the real effect cannot be achieved', not a defect.
  8. The database is the sole authoritative source: The YAML defines the desired state, and the synchronization process ensures the database is fully consistent with the YAML (70 people). The syncStaffToDb function has been fixed to delete employees from the database that are not defined in the YAML.

10. Troubleshooting

SymptomPossible CauseTroubleshooting
Returns success:false + disk I/O errorC drive fullRun `df -h /` to confirm space, clean up, and rerun
Page numbers all 0 / module not enabledCode contains conflict markers or require failureBefore startup, grep for `^(>>>>>> )`; check if safeRequire returns null
Natural language triggers wrong employeeGeneric verbs are hijackedUse the exclusive terms from Section 6 of this article (e.g., *Core Intelligence*), or pass staffId directly
Team formation hangs with no responseAwaiting manual sign-offGET `/api/digital-staff/taskforce/pending` to view and resume
Heavy capability timeoutReal large data volumeUse asynchronous taskId polling, or display results page after preheating
Demo mode returns emptyDemo data not loadedCheck if `/api/plm-demo/config` has enabled: true

11. External System Integration and Invocability (Test Results)

This round conducted real HTTP packet capture verification on all digital employee interfaces: the interfaces themselves function correctly (list/run/loops/goals/configuration CRUD all return correct data); but "whether they can be directly invoked externally" depends on the client type and which routing path is taken. The inconsistent CORS issue has been fixed. The current status is as follows.

11.1 Network Exposure

  • The service server.listen(config.port) does not specify a host → binds to 0.0.0.0 / [::] on all network interfaces (not localhost-only), reachable within the LAN; public network exposure requires firewall/port forwarding/reverse proxy.

11.2 CORS (Browser Cross-Origin)

  • Now unified: All /api/digital-staff/ interfaces (including new CRUD modules list / loops / goals / :id/enable / :id/rules-prompts, and old inline interfaces) in their responses include Access-Control-Allow-Origin: , and OPTIONS preflight requests return 204 + CORS headers.
  • Before fix: New CRUD module responses lacked CORS headers → browser cross-origin calls to list/loops/etc. were blocked. This has been fixed by adding the headers in server/routes/digital-staff-routes.js at the _json output point.
  • Conclusion: The browser-based Web CMS can now directly call all digital employee APIs across domains.

11.3 Current Authentication Status (Open Platform KEY + Dual-Track System, MVP Decision Made)

  • The Open Platform KEY mechanism has been implemented (server/routes/open-platform.js), covering two types of external routes: /api/goai-demo/ (collaboration loop) and /api/agents/ (Agent Card integration). The mechanism includes:
  • POST /api/open/keys to apply for a Key (returns ba_xxx_xxx_xxx format), GET /api/open/spec returns OpenAPI 3.0 specification, GET /api/open/usage queries call statistics.
  • Authentication supports X-API-Key: or Authorization: Bearer ; implements rate limiting per Key (free=30, pro=120, enterprise=600 calls/minute) and call auditing (writes to api_usage table).
  • Two seed Keys (demo / goai-review, default free / pro tiers) are injected on startup.
  • Invalid / expired Key → 401 rejection (tested: X-API-Key: ba_invalid → 401), valid Key → pass through and audit.
  • ? Dual-track system (by design, not a defect; decision made on 2026-08-12): The logic in server.js:4126 is "Keys with ba_ prefix → go through open platform authentication + rate limiting + auditing; Keys without prefix → maintain original internal logic unchanged." Two clear tracks:
  • External API calls (with ba_ Key) → Authentication + Rate limiting + Billing (audit logging).
  • Internal frontend calls (no Key) → Original logic unchanged, no frontend modifications required.
  • The current MVP adopts this dual-track approach; if unified control is needed in the future, simply add one line in src/utils/api.js: headers['X-API-Key'] = localStorage.getItem('bossagents_api_key'), no frontend refactoring required.
  • **71 original digital staff interfaces /api/digital-staff/* are not connected to the open platform gateway: This is an intentional internal component, facing the intranet / 127.0.0.1; public exposure must go through nginx reverse proxy convergence (see 11.5 / 12.2).
  • Two sets of Keys are not interchangeable: The open platform Key (DB table api_keys) and the JWT in server/middleware/auth.js are two independent systems; the latter is not mounted to any routes.

11.4 Direct Call Capability Matrix for Each Client (Dual-Track System)

CallerOpen Platform Route (goai-demo/agents)Original Digital Staff Route (digital-staff)
External API Call (with ba_ Key)✅ Auth + Rate Limit + Audit(Not exposed in production; accessed via reverse proxy, see 12.2)
Internal Frontend / Web CMS (No Key)✅ Dual-track allowed, original logic unchanged, zero frontend modification✅ Direct call via intranet / 127.0.0.1 (by design)

11.5 Recommended Integration Approach

  1. External enterprise integration should use the open platform main pipeline**: Apply for a Key → Call /api/goai-demo/* with X-API-Key for collaborative closed-loop (internal auto-orchestration of 71 digital staff). This is the only entry point that should be exposed externally.
  2. Prefer backend relay: The CMS backend holds the Key to call bossagents (avoiding browser CORS / auth complexity), the frontend only communicates with its own backend.
  3. Mini-program / Public network: nginx terminates TLS (443) → reverse proxy to https://ylxt.chat, whitelist the domain in the MP backend; use the open platform Key, do not expose the original digital-staff port.

11.6 Open Platform Access Guide (Tested and Functional)

1) Apply for a Key

curl -X POST http://<host>:3006/api/open/keys -H "Content-Type: application/json" -d '{"customer_id":"your_corp","name":"贵司名称","plan":"pro"}'
# => {"success":true,"api_key":"ba_xxxx_xxxx_xxxx","plan":"pro","rate_limit":120}

2) 带 Key 调用协同闭环(编排数字员工)

curl -X POST http://<host>:3006/api/goai-demo/collaboration/goai -H "X-API-Key: ba_xxxx_xxxx_xxxx" -H "Content-Type: application/json" -d '{"instruction":"把本月采购申请汇总成待办"}'
# 或:Authorization: Bearer ba_xxxx_xxxx_xxxx

3) 查询调用统计(需 Key)

curl "http://<host>:3006/api/open/usage?days=7" -H "X-API-Key: ba_xxxx_xxxx_xxxx"

4) 查看完整规范

curl http://<host>:3006/api/open/spec

限流:free 30 / pro 120 / enterprise 600 次/分钟(按 60s 滑动窗口 api_usage 计数,超限返回 429 + retry_after:60)。无效 / 过期 Key 返回 401。

11.7 Real Orchestration Verification (Locally Tested)

  • POST /api/goai-demo/collaboration/goai with a valid demo Key → HTTP 200, takes 22.9s, returns a trace_id and actually orchestrates digital employees (e.g., DS-GOAI-SCHED task decomposition, procurement/maintenance reminders), proving the open platform Key → goai-demo collaboration → 71 digital employee chain is connected.
  • GET /api/goai-demo/positions with a valid/invalid Key → 200 / 401 (correctly distinguished). Returns 3 collaboration demo positions: goai (POS-GOAI, agents=3), procure (POS-PROCURE-CHAIN, agents=4), inspect (POS-INSPECT-LOOP, agents=3).
  • POST /api/open/keys → 201, writes to the api_keys table; GET /api/open/usage requires a Key (no Key → 401).

11.8 End-to-End Testing (E2E, 2026-08-12, 7/7 all passed)

| # | Test Item | Expected | Actual | Remarks |

|---|---|---|---|---|

| 1 | OpenAPI Specification | 3.0 / v1.0.0 | ✅ | GET /api/open/spec returns OpenAPI 3.0.3 |

| 2 | Apply for API Key | Returns ba_* | ✅ | POST /api/open/keys → ba_xxxx_xxxx_xxxx |

| 3 | Valid Key Access | 200 + 3 Positions | ✅ | GET /api/goai-demo/positions with Key → 3 demo positions |

| 4 | Invalid Key Rejection | 401 | ✅ | X-API-Key: ba_invalid → 401 |

| 5 | Internal Access without Key | 200 (frontend unaffected) | ✅ | Dual-track: No Key maintains original logic |

| 6 | Call Statistics | Recorded | ✅ | GET /api/open/usage returns call records for each endpoint |

| 7 | Document Page | 200 | ✅ | GET /api/open/docs → 200, approx. 13 KB (api-docs.html) |

All 7 items above have been independently re-verified and passed; Item 5 confirms that the internal frontend requires no modification under the dual-track system and has been implemented.


12. Open Platform Security Boundary (Decided + Deployment Recommendations)

12.1 goai-demo/agents Dual-Track → Is Key Mandatory?

  • Decision (2026-08-12): MVP adopts dual-track, Key not mandatory. Reason: Internal frontend maintains original logic with direct calls without Key, requiring zero modification; external calls with Key enable automatic authentication + rate limiting + auditing.
  • Current Status: server.js:4126 — Only requests carrying a ba_-prefixed Key go through openPlatform.middleware validation; requests without a Key are directly passed (200). This is precisely the implementation point of the dual-track system, not a defect.
  • Optional Future Enhancement: To implement unified control, delete the else pass-through branch to enforce 401 for all requests without a valid Key, and inject X-API-Key in src/utils/api.js. The required changes are minimal.

12.2 Should the original digital staff interface /api/digital-staff/* be integrated into the gateway?

  • Current status: 70 underlying interfaces (list/run/config/loops...) have no Key authentication at all. Testing shows that directly calling 'run' without a Key can still execute the digital staff. This is an intentional internal component (intranet / 127.0.0.1). The database is fully consistent with the YAML, with no residual data.
  • Deployment recommendation (preferred, zero code changes): In production, only expose the open platform entry points (nginx reverse proxy for /api/goai-demo, /api/agents, /api/open). Do not forward /api/digital-staff; the original interfaces should only allow 127.0.0.1 / intranet access.
  • Enhanced control supplement (optional): If code-level control is needed, add openPlatform.middleware (or softAuth) requiring a Key at the digital staff dispatch entry in server.js, and configure Keys for the internal CMS or add an intranet IP whitelist.

12.3 Explanation of the Two Authentication Systems

  • The Open Platform Key (api_keys table, prefix ba_) and the JWT in server/middleware/auth.js are independent. The current JWT middleware is not mounted to any routes.

13. Product Positioning and Current Status Self-Assessment (2026-08-25)

Positioning Principles (from Product Decisions)

  • Industrial AI agents are not a joke; prioritize quality over quantity: Only retain/refine employees that can deliver tangible results, never keep useless ones for show, to avoid the embarrassment and frustration of "having a bunch of junk that only causes trouble."
  • General capabilities (content/documentation/marketing/customer service) must surpass and be more distinctive than specialized tools for these tasks, and be offered for free, serving as a channel for customer acquisition and differentiation.
  • Taking down means soft-hiding, not deletion: Invisible on the user side, visible and activatable on the admin side; restored when conditions are met. The WEB and mini-program clients share the same backend single source of truth, with only two UI renderings (see Section F for Digital Employee Experience Alignment).

Self-Assessment Conclusion for 53 Active Employees (This round of "Re-check Carefully")

  • Hard metrics: All 53 active employees (STAFF_DEFAULTS) point to real, existing worker files that are exported and run, with no critical issues like "missing worker / not exported" (verified via script checking each worker file's existence and module.exports).
  • The database is the single source of truth, fully consistent with the YAML (70 people), with no remnants.
  • Sampling verification of real assignability (non-shell):
  • GOAI series + Inspection Loop (7 in total) share goai-agent-worker, making real calls to callLLM + each employee's dedicated systemPrompt to produce structured JSON, non-shell.
  • Content content.js, documentation doc-worker.js, marketing mkt-worker.js, and customer service customer-service-worker.js all connect to the real content center / document engine / LLM for generation, not shells; doc-worker.js:108 explicitly states 'return clear error when doc-engine is unavailable, not placeholder data' (honesty first).
  • DS-SCSAI-001 (Restored 2026-08-16): Actual test returns real object creation confirmation flow, name matches reality, not a shell.
  • PLM Demo Mode: All 8 scenarios use preset data, no LLM calls, responsive.
  • Conclusion: The current active set contains none of those 19 'misnamed / pure placeholder' junk items of the same type.

Current Status of Four General Capability Directions

| Direction | Employee | Current Status | Action |

|---|---|---|---|

| Content | DS-CONTENT-001 Content Generator | ✅ Connects to content center + LLM, real generation (refine/publish) | Refine, offer for free |

| Documentation | DS-DOC-001 Document Digital Employee | ✅ Connects to doc-engine, honest error reporting, no placeholders | Refine, offer for free |

| Marketing | DS-MKT-001 Marketing Assistant | ✅ Connects to marketing engine / LLM for lead generation | Refine, offer for free |

| News | DS-NEWS-001 News Assistant | ⚠️ Honest Shell: Returns "Not Configured" truthfully when no news source is connected; no real output (news-worker.js:25) | Refine by connecting NEWS_API_KEY, or temporarily remove |

| Customer Service | DS-CS-001 Digital Customer Service Agent | ✅ Live: LLM-driven dialogue, identifies intent/collects leads and automatically writes to leads.json (server/data/leads.json), guides trial/purchase; same agent shared via /api/digital-staff/run for web and mini-program | Refine and offer for free (Added 2026-08-15) |

| PLM | DS-PLM-DEMO-001 PLM Demo Assistant | ✅ Live: 8 demo scenarios, preset data, responds to

To-do Suggestions

  1. DS-NEWS-001: Refine and offer for free after connecting real news sources (RSS / NewsAPI, configure NEWS_API_KEY); if not connecting sources temporarily, suggest soft-hiding it along with the other 19 to avoid the perception of "useless placeholder".
  2. Digital Customer Service Agent DS-CS-001: Went live on 2026-08-15 (see table above). LLM dialogue + automatic lead capture + guides trial/purchase, same agent reused for web/mini-program. The foundational implementation for the differentiated free offering is in place.
  3. PLM Demo Mode DS-PLM-DEMO-001: Went live on 2026-08-25. 8 scenarios cover change impact analysis, data quality inspection, ECR approval loop closure, Part release, governance record query, production order tracking, incoming inspection query, and customer complaint 8D report. Preset data, no LLM calls, responds
  4. Continuity Principle: New/retained employees must satisfy "real assignment, name matches reality, verifiable results"; otherwise, they will be delisted.

14. Runtime Verification and Fix Records (2026-08-27)

14.1 70/70 employees executed successfully with no parameters

Verification method: For each employee, call GET /api/digital-staff/run?staffId=XXX (zero parameters) and check that the returned result.success === true.

Result: 70/70 all succeeded, producing real business data (SCSAI PLM / SQLite), with no simulation/hardcoding.

14.2 Worker Alias Mapping Fix

Issue: Worker names in YAML use the xxx-worker suffix (e.g., quality-agent-worker), but the WORKERS mapping table in lite-scheduler.js uses xxx (e.g., quality-agent), causing 25 workers to be unfound and returning "unknown worker" errors.

Fix: Added 25 alias entries in server/boss-scheduler/lite-scheduler.js:114-138: doc-worker, mall-worker, product-worker, quality-agent-worker, process-agent-worker, qcc-worker, capa-worker, ncr-worker, fmea-worker, audit-worker, spc-worker, stat-worker, sccapp-design-worker, sccapp-optimize-worker, sccapp-sync-worker, sccapp-quality-bridge-worker, kb-pipeline-worker, customer-service-worker, data-ops-worker, kitter-worker, lineleader-worker, operator-worker, prod-stat-worker, prod-tracker-worker, workreport-worker.

14.3 Default Parameter Fixes (4 Workers)

Principle: Digital workers must run with preset parameters, without requiring users to specify them individually. They should produce real results even when run without parameters.

| Worker | Issue | Fix File | Fix Content | Output After Fix |

*---|8---|---|---|---|

| DS-COST-001 | Stuck in human-in-the-loop confirmation step | cost-optimizer.js:346 + local.yaml:439 | Added autoConfirm: true; worker checks this parameter to skip confirmation | 500 parts / 35 assemblies / 8 BOM analyses completed |

| DS-CHIP-001 | Missing design specification input (≥10 characters) | chip-worker.js:105 | Added default RISC-V RV32I specification description | Identified RV32I / 5-stage pipeline / 32 registers |

| DS-CS-001 | Missing user message input | customer-service-worker.js:99 | Added default welcome inquiry message | Returns product introduction + solution recommendation |

| DS-PROC-DATA-001 | Empty process_specs table leads to success=false | process-worker.js:451 | Changed to success: !reportWriteError, success is defined as having SCCAPP data | 26163 Process Documents / 163441 Process Steps / Report Generated |

14.4 Maturity Assessment

LevelNameCountPercentageRepresentative Employees
L2Rule-Driven2739%DS-STOCK-001, DS-IQC-001, DS-BOM-001, DS-ECR-001
L3LLM-Enhanced4159%DS-SCSAI-001, DS-QUALITY-001, DS-CHIP-001, DS-CS-001
L4Autonomous Closed Loop23%DS-LOOP-001 (Closed-Loop Engine), DS-SYS-001 (Target Verification)

14.5 Intent Matching Verification

POST /api/staff/match (All 5 business intents correctly matched):

| Input Text | Matched Staff | Match Score | Keyword Length Weighting |

|---|---|---|---|

| Incoming Inspection | DS-IQC-001 (Incoming Inspection Clerk) | 60 | "来料"(2 chars)=20 + "来料检验"(4 chars)=40 |

| Purchase 50 servo motors | DS-PROC-001 (Procurement Assistant) | 20 | "采购"(2 chars)=20 |

| Check BOM data quality | DS-BOM-001 (BOM Manager) | 60 | "BOM"(3 chars)=30 + "检查"(2 chars)=20 + fuzzy=10 |

| Inventory Query | DS-STOCK-001 (Inventory Steward) | 65 | "库存"(2 chars)=20 + "库存查询"(4 chars)=40 + fuzzy=5 |

| Production Reporting | DS-WORKREPORT-001 (Production Reporter) | 65 | "生产报工"(4 chars)=40 + "报工"(2 chars)=20 + fuzzy=5 |

← 返回案例列表

Try 左帮右臂 Industrial Agent — your digital workforce

Available as a WeChat mini program, web app (ylxt.chat) and desktop client. Start from whichever fits your workflow.

🌐 Web App 💻 Desktop Download 📞 Call 189-8606-6876
WeChat mini program QR
Scan for the WeChat mini program
Share:
🤖 Try Now →
🤖
🎁