@zeyue0329/xiaoma-cli 1.0.49 → 1.0.66
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/.playwright-cli/console-2026-05-13T06-36-26-793Z.log +2 -0
- package/.playwright-cli/page-2026-05-13T06-36-27-725Z.yml +1 -0
- package/CLAUDE.md +79 -251
- package/LICENSE +30 -0
- package/README.md +127 -2
- package/XiaoMa-CLI-2026H2-/350/277/255/344/273/243/350/247/204/345/210/222.pptx +0 -0
- package/demo/xiaoma-bug-circle-resolve/SKILL.md +6 -0
- package/demo/xiaoma-bug-circle-resolve/workflow.md +254 -0
- package/demo/xiaoma-bug-resolve/SKILL.md +6 -0
- package/demo/xiaoma-bug-resolve/workflow.md +269 -0
- package/demo/xiaoma-prd-saas-zh/README.md +57 -0
- package/demo/xiaoma-prd-saas-zh/domain-research.md +128 -0
- package/demo/xiaoma-prd-saas-zh/epics.md +303 -0
- package/demo/xiaoma-prd-saas-zh/market-research-2026-q1.md +183 -0
- package/demo/xiaoma-prd-saas-zh/prd-bad-examples.md +268 -0
- package/demo/xiaoma-prd-saas-zh/prd.md +409 -0
- package/demo/xiaoma-prd-saas-zh/product-brief.md +97 -0
- package/demo/xiaoma-prd-saas-zh/validation-report.md +279 -0
- package/docs/roadshow/01-/351/241/271/347/233/256/346/246/202/350/247/210/344/270/216/346/236/266/346/236/204.md +189 -0
- package/docs/roadshow/02-/346/231/272/350/203/275/344/275/223/347/263/273/347/273/237/350/257/246/350/247/243.md +464 -0
- package/docs/roadshow/03-/346/231/272/350/203/275/344/275/223/344/272/244/344/272/222/346/265/201/347/250/213/345/233/276.md +334 -0
- package/docs/roadshow/04-/345/267/245/344/275/234/346/265/201/346/211/247/350/241/214/350/257/246/350/247/243.md +1038 -0
- package/docs/roadshow/05-/346/212/200/346/234/257/345/256/236/347/216/260/344/270/216/345/210/233/346/226/260/344/272/256/347/202/271.md +205 -0
- package/docs/roadshow/06-/350/267/257/346/274/224/346/200/273/347/273/223/344/270/216/346/274/224/347/244/272/345/273/272/350/256/256.md +167 -0
- package/media/doc1_fig1.png +0 -0
- package/media/doc1_fig2.png +0 -0
- package/media/doc1_fig3.png +0 -0
- package/media/doc1_fig4.png +0 -0
- package/media/doc2_fig1.png +0 -0
- package/media/doc2_fig2.png +0 -0
- package/media/doc2_fig3.png +0 -0
- package/media/doc2_fig4.png +0 -0
- package/media/doc3_fig1.png +0 -0
- package/media/doc3_fig2.png +0 -0
- package/media/doc3_fig3.png +0 -0
- package/media/doc3_fig4.png +0 -0
- package/media/doc4_fig1.png +0 -0
- package/media/doc4_fig2.png +0 -0
- package/media/doc4_fig3.png +0 -0
- package/media/doc5_fig1.png +0 -0
- package/media/doc5_fig2.png +0 -0
- package/media/doc5_fig3.png +0 -0
- package/package.json +50 -60
- package/src/core/module-help.csv +11 -0
- package/src/core/module.yaml +25 -0
- package/src/core/skills/xiaoma-advanced-elicitation/SKILL.md +6 -0
- package/src/core/skills/xiaoma-advanced-elicitation/methods.csv +51 -0
- package/src/core/skills/xiaoma-advanced-elicitation/workflow.md +135 -0
- package/src/core/skills/xiaoma-advanced-elicitation/xiaoma-skill-manifest.yaml +1 -0
- package/src/core/skills/xiaoma-brainstorming/SKILL.md +6 -0
- package/src/core/skills/xiaoma-brainstorming/brain-methods.csv +62 -0
- package/src/core/skills/xiaoma-brainstorming/steps/step-01-session-setup.md +214 -0
- package/src/core/skills/xiaoma-brainstorming/steps/step-01b-continue.md +124 -0
- package/src/core/skills/xiaoma-brainstorming/steps/step-02a-user-selected.md +229 -0
- package/src/core/skills/xiaoma-brainstorming/steps/step-02b-ai-recommended.md +239 -0
- package/src/core/skills/xiaoma-brainstorming/steps/step-02c-random-selection.md +211 -0
- package/src/core/skills/xiaoma-brainstorming/steps/step-02d-progressive-flow.md +266 -0
- package/src/core/skills/xiaoma-brainstorming/steps/step-03-technique-execution.md +401 -0
- package/src/core/skills/xiaoma-brainstorming/steps/step-04-idea-organization.md +305 -0
- package/src/core/skills/xiaoma-brainstorming/template.md +15 -0
- package/src/core/skills/xiaoma-brainstorming/workflow.md +53 -0
- package/src/core/skills/xiaoma-brainstorming/xiaoma-skill-manifest.yaml +1 -0
- package/src/core/skills/xiaoma-distillator/SKILL.md +178 -0
- package/src/core/skills/xiaoma-distillator/agents/distillate-compressor.md +116 -0
- package/src/core/skills/xiaoma-distillator/agents/round-trip-reconstructor.md +68 -0
- package/src/core/skills/xiaoma-distillator/resources/compression-rules.md +51 -0
- package/src/core/skills/xiaoma-distillator/resources/distillate-format-reference.md +227 -0
- package/src/core/skills/xiaoma-distillator/resources/splitting-strategy.md +78 -0
- package/src/core/skills/xiaoma-distillator/scripts/analyze_sources.py +300 -0
- package/src/core/skills/xiaoma-distillator/scripts/tests/test_analyze_sources.py +204 -0
- package/src/core/skills/xiaoma-distillator/xiaoma-skill-manifest.yaml +15 -0
- package/src/core/skills/xiaoma-editorial-review-prose/SKILL.md +6 -0
- package/src/core/skills/xiaoma-editorial-review-prose/workflow.md +81 -0
- package/src/core/skills/xiaoma-editorial-review-prose/xiaoma-skill-manifest.yaml +1 -0
- package/src/core/skills/xiaoma-editorial-review-structure/SKILL.md +6 -0
- package/src/core/skills/xiaoma-editorial-review-structure/workflow.md +174 -0
- package/src/core/skills/xiaoma-editorial-review-structure/xiaoma-skill-manifest.yaml +1 -0
- package/src/core/skills/xiaoma-help/SKILL.md +6 -0
- package/src/core/skills/xiaoma-help/workflow.md +88 -0
- package/src/core/skills/xiaoma-help/xiaoma-skill-manifest.yaml +1 -0
- package/src/core/skills/xiaoma-index-docs/SKILL.md +6 -0
- package/src/core/skills/xiaoma-index-docs/workflow.md +61 -0
- package/src/core/skills/xiaoma-index-docs/xiaoma-skill-manifest.yaml +1 -0
- package/src/core/skills/xiaoma-party-mode/SKILL.md +6 -0
- package/src/core/skills/xiaoma-party-mode/steps/step-01-agent-loading.md +138 -0
- package/src/core/skills/xiaoma-party-mode/steps/step-02-discussion-orchestration.md +187 -0
- package/src/core/skills/xiaoma-party-mode/steps/step-03-graceful-exit.md +167 -0
- package/src/core/skills/xiaoma-party-mode/workflow.md +190 -0
- package/src/core/skills/xiaoma-party-mode/xiaoma-skill-manifest.yaml +1 -0
- package/src/core/skills/xiaoma-review-adversarial-general/SKILL.md +6 -0
- package/src/core/skills/xiaoma-review-adversarial-general/workflow.md +32 -0
- package/src/core/skills/xiaoma-review-adversarial-general/xiaoma-skill-manifest.yaml +1 -0
- package/src/core/skills/xiaoma-review-edge-case-hunter/SKILL.md +6 -0
- package/src/core/skills/xiaoma-review-edge-case-hunter/workflow.md +62 -0
- package/src/core/skills/xiaoma-review-edge-case-hunter/xiaoma-skill-manifest.yaml +1 -0
- package/src/core/skills/xiaoma-shard-doc/SKILL.md +6 -0
- package/src/core/skills/xiaoma-shard-doc/workflow.md +100 -0
- package/src/core/skills/xiaoma-shard-doc/xiaoma-skill-manifest.yaml +1 -0
- package/src/core/tasks/xiaoma-create-prd/SKILL.md +6 -0
- package/src/core/tasks/xiaoma-create-prd/data/domain-complexity.csv +15 -0
- package/src/core/tasks/xiaoma-create-prd/data/prd-purpose.md +354 -0
- package/src/core/tasks/xiaoma-create-prd/data/project-types.csv +11 -0
- package/src/core/tasks/xiaoma-create-prd/data/upstream-input-contract.md +168 -0
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-01-init.md +178 -0
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-01b-continue.md +161 -0
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-02-discovery.md +208 -0
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-02b-vision.md +142 -0
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-02c-executive-summary.md +158 -0
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-03-success.md +214 -0
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-04-journeys.md +201 -0
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-05-domain.md +194 -0
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-06-innovation.md +211 -0
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-07-project-type.md +222 -0
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-08-scoping.md +216 -0
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-09-functional.md +219 -0
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-10-nonfunctional.md +230 -0
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-11-polish.md +221 -0
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-12-complete.md +115 -0
- package/src/core/tasks/xiaoma-create-prd/templates/prd-skeleton-reference.md +428 -0
- package/src/core/tasks/xiaoma-create-prd/templates/prd-template.md +108 -0
- package/src/core/tasks/xiaoma-create-prd/workflow.md +62 -0
- package/src/core/tasks/xiaoma-create-prd/xiaoma-skill-manifest.yaml +1 -0
- package/src/utility/agent-components/activation-rules.txt +6 -0
- package/src/utility/agent-components/activation-steps.txt +14 -0
- package/src/utility/agent-components/agent-command-header.md +1 -0
- package/src/utility/agent-components/agent.customize.template.yaml +41 -0
- package/src/utility/agent-components/handler-action.txt +4 -0
- package/src/utility/agent-components/handler-data.txt +5 -0
- package/src/utility/agent-components/handler-exec.txt +6 -0
- package/src/utility/agent-components/handler-multi.txt +13 -0
- package/src/utility/agent-components/handler-tmpl.txt +5 -0
- package/src/utility/agent-components/menu-handlers.txt +6 -0
- package/src/xmc/agents/analyst.agent.yaml +47 -0
- package/src/xmc/agents/architect.agent.yaml +29 -0
- package/src/xmc/agents/dev.agent.yaml +38 -0
- package/src/xmc/agents/pm.agent.yaml +44 -0
- package/src/xmc/agents/qa.agent.yaml +58 -0
- package/src/xmc/agents/quick-flow-solo-dev.agent.yaml +36 -0
- package/src/xmc/agents/sm.agent.yaml +53 -0
- package/src/xmc/agents/tech-writer/tech-writer-sidecar/documentation-standards.md +224 -0
- package/src/xmc/agents/tech-writer/tech-writer.agent.yaml +46 -0
- package/src/xmc/agents/tech-writer/xiaoma-skill-manifest.yaml +3 -0
- package/src/xmc/agents/ux-designer.agent.yaml +27 -0
- package/src/xmc/agents/xiaoma-skill-manifest.yaml +39 -0
- package/src/xmc/data/project-context-template.md +26 -0
- package/src/xmc/module-help.csv +32 -0
- package/src/xmc/module.yaml +50 -0
- package/src/xmc/teams/default-party.csv +20 -0
- package/src/xmc/teams/team-fullstack.yaml +12 -0
- package/src/xmc/workflows/1-analysis/auto-requirements-pipeline/SKILL.md +6 -0
- package/src/xmc/workflows/1-analysis/auto-requirements-pipeline/checklist.md +28 -0
- package/src/xmc/workflows/1-analysis/auto-requirements-pipeline/steps/step-01-init-and-validate.md +102 -0
- package/src/xmc/workflows/1-analysis/auto-requirements-pipeline/steps/step-02-requirements-analysis.md +146 -0
- package/src/xmc/workflows/1-analysis/auto-requirements-pipeline/steps/step-03-architecture-analysis.md +141 -0
- package/src/xmc/workflows/1-analysis/auto-requirements-pipeline/steps/step-04-create-prd.md +101 -0
- package/src/xmc/workflows/1-analysis/auto-requirements-pipeline/steps/step-05-validate-prd.md +159 -0
- package/src/xmc/workflows/1-analysis/auto-requirements-pipeline/steps/step-06-create-epics.md +104 -0
- package/src/xmc/workflows/1-analysis/auto-requirements-pipeline/steps/step-07-create-architecture.md +107 -0
- package/src/xmc/workflows/1-analysis/auto-requirements-pipeline/steps/step-08-finalize.md +124 -0
- package/src/xmc/workflows/1-analysis/auto-requirements-pipeline/workflow.md +107 -0
- package/src/xmc/workflows/1-analysis/auto-requirements-pipeline/xiaoma-skill-manifest.yaml +3 -0
- package/src/xmc/workflows/1-analysis/research/market-steps/step-01-init.md +182 -0
- package/src/xmc/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +237 -0
- package/src/xmc/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +249 -0
- package/src/xmc/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +259 -0
- package/src/xmc/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +177 -0
- package/src/xmc/workflows/1-analysis/research/market-steps/step-06-research-completion.md +476 -0
- package/src/xmc/workflows/1-analysis/research/research.template.md +29 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-domain-research/SKILL.md +6 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-domain-research/domain-steps/step-01-init.md +137 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-domain-research/domain-steps/step-02-domain-analysis.md +229 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-domain-research/domain-steps/step-03-competitive-landscape.md +238 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-domain-research/domain-steps/step-04-regulatory-focus.md +206 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-domain-research/domain-steps/step-05-technical-trends.md +234 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-domain-research/domain-steps/step-06-research-synthesis.md +444 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-domain-research/research.template.md +29 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-domain-research/workflow.md +49 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-domain-research/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-market-research/SKILL.md +6 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-market-research/research.template.md +29 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-market-research/steps/step-01-init.md +184 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-market-research/steps/step-02-customer-behavior.md +239 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-market-research/steps/step-03-customer-pain-points.md +251 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-market-research/steps/step-04-customer-decisions.md +261 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-market-research/steps/step-05-competitive-analysis.md +173 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-market-research/steps/step-06-research-completion.md +478 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-market-research/workflow.md +49 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-market-research/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-technical-research/SKILL.md +6 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-technical-research/research.template.md +29 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-technical-research/technical-steps/step-01-init.md +137 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-technical-research/technical-steps/step-02-technical-overview.md +239 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-technical-research/technical-steps/step-03-integration-patterns.md +248 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-technical-research/technical-steps/step-04-architectural-patterns.md +202 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-technical-research/technical-steps/step-05-implementation-research.md +233 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-technical-research/technical-steps/step-06-research-synthesis.md +487 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-technical-research/workflow.md +50 -0
- package/src/xmc/workflows/1-analysis/research/xiaoma-technical-research/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/SKILL.md +6 -0
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/product-brief.template.md +10 -0
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/steps/step-01-init.md +170 -0
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/steps/step-01b-continue.md +158 -0
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/steps/step-02-vision.md +193 -0
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/steps/step-03-users.md +196 -0
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/steps/step-04-metrics.md +199 -0
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/steps/step-05-scope.md +213 -0
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/steps/step-06-complete.md +159 -0
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/workflow.md +55 -0
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/1-analysis/xiaoma-product-brief-preview/SKILL.md +88 -0
- package/src/xmc/workflows/1-analysis/xiaoma-product-brief-preview/agents/artifact-analyzer.md +60 -0
- package/src/xmc/workflows/1-analysis/xiaoma-product-brief-preview/agents/opportunity-reviewer.md +44 -0
- package/src/xmc/workflows/1-analysis/xiaoma-product-brief-preview/agents/skeptic-reviewer.md +44 -0
- package/src/xmc/workflows/1-analysis/xiaoma-product-brief-preview/agents/web-researcher.md +49 -0
- package/src/xmc/workflows/1-analysis/xiaoma-product-brief-preview/prompts/contextual-discovery.md +57 -0
- package/src/xmc/workflows/1-analysis/xiaoma-product-brief-preview/prompts/draft-and-review.md +86 -0
- package/src/xmc/workflows/1-analysis/xiaoma-product-brief-preview/prompts/finalize.md +75 -0
- package/src/xmc/workflows/1-analysis/xiaoma-product-brief-preview/prompts/guided-elicitation.md +70 -0
- package/src/xmc/workflows/1-analysis/xiaoma-product-brief-preview/resources/brief-template.md +60 -0
- package/src/xmc/workflows/1-analysis/xiaoma-product-brief-preview/xiaoma-manifest.json +17 -0
- package/src/xmc/workflows/1-analysis/xiaoma-product-brief-preview/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/data/domain-complexity.csv +15 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/data/prd-purpose.md +197 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/data/project-types.csv +11 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md +224 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-02-format-detection.md +191 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-02b-parity-check.md +209 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-03-density-validation.md +174 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-04-brief-coverage-validation.md +214 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-05-measurability-validation.md +228 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-06-traceability-validation.md +217 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-07-implementation-leakage-validation.md +205 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-08-domain-compliance-validation.md +243 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-09-project-type-validation.md +263 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md +209 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md +264 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-12-completeness-validation.md +242 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md +232 -0
- package/src/xmc/workflows/2-plan-workflows/create-prd/workflow-validate-prd.md +65 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/SKILL.md +6 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-01-init.md +135 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-01b-continue.md +127 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-02-discovery.md +190 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-03-core-experience.md +217 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-04-emotional-response.md +220 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-05-inspiration.md +235 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-06-design-system.md +253 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-07-defining-experience.md +255 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-08-visual-foundation.md +225 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-09-design-directions.md +225 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-10-user-journeys.md +242 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-11-component-strategy.md +249 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-12-ux-patterns.md +238 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-13-responsive-accessibility.md +265 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-14-complete.md +171 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/ux-design-template.md +13 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/workflow.md +36 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-edit-prd/SKILL.md +6 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-edit-prd/steps-e/step-e-01-discovery.md +242 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-edit-prd/steps-e/step-e-01b-legacy-conversion.md +204 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-edit-prd/steps-e/step-e-02-review.md +245 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-edit-prd/steps-e/step-e-03-edit.md +250 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-edit-prd/steps-e/step-e-04-complete.md +165 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-edit-prd/workflow.md +63 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-edit-prd/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/SKILL.md +6 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/data/domain-complexity.csv +15 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/data/prd-purpose.md +197 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/data/prd-quality-rubric.csv +14 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/data/project-types.csv +11 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-01-discovery.md +221 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-02-format-detection.md +188 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-02b-parity-check.md +206 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-03-density-validation.md +171 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-04-brief-coverage-validation.md +211 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-05-measurability-validation.md +225 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-06-traceability-validation.md +214 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-07-implementation-leakage-validation.md +202 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-08-domain-compliance-validation.md +240 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-09-project-type-validation.md +260 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-10-smart-validation.md +206 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-11-holistic-quality-validation.md +261 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-12-completeness-validation.md +239 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-13-report-complete.md +229 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/workflow.md +62 -0
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-check-implementation-readiness/SKILL.md +6 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-check-implementation-readiness/steps/step-01-document-discovery.md +179 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-check-implementation-readiness/steps/step-02-prd-analysis.md +168 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-check-implementation-readiness/steps/step-03-epic-coverage-validation.md +169 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-check-implementation-readiness/steps/step-04-ux-alignment.md +129 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-check-implementation-readiness/steps/step-05-epic-quality-review.md +241 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-check-implementation-readiness/steps/step-06-final-assessment.md +126 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-check-implementation-readiness/templates/readiness-report-template.md +4 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-check-implementation-readiness/workflow.md +49 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-check-implementation-readiness/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/SKILL.md +6 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/architecture-decision-template.md +12 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/data/domain-complexity.csv +13 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/data/project-types.csv +7 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/steps/step-01-init.md +153 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/steps/step-01b-continue.md +173 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/steps/step-02-context.md +224 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/steps/step-03-starter.md +329 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/steps/step-04-decisions.md +318 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/steps/step-05-patterns.md +359 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/steps/step-06-structure.md +379 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/steps/step-07-validation.md +359 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/steps/step-08-complete.md +76 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/workflow.md +38 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-epics-and-stories/SKILL.md +6 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-epics-and-stories/steps/step-01-validate-prerequisites.md +255 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-epics-and-stories/steps/step-02-design-epics.md +212 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-epics-and-stories/steps/step-03-create-stories.md +255 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-epics-and-stories/steps/step-04-final-validation.md +131 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-epics-and-stories/templates/epics-template.md +61 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-epics-and-stories/workflow.md +53 -0
- package/src/xmc/workflows/3-solutioning/xiaoma-create-epics-and-stories/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/SKILL.md +6 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/checklist.md +22 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/steps/step-01-init-and-validate.md +173 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/steps/step-02-create-story.md +102 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/steps/step-03-validate-story.md +107 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/steps/step-04-develop-story.md +97 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/steps/step-05-code-review.md +95 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/steps/step-06-test-story.md +253 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/steps/step-07-fix-and-retest.md +237 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/steps/step-08-complete-story.md +114 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/steps/step-09-finalize.md +69 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/workflow.md +89 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/xiaoma-skill-manifest.yaml +3 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline-batch/SKILL.md +6 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline-batch/workflow.md +333 -0
- package/src/xmc/workflows/4-implementation/auto-story-pipeline-batch/xiaoma-skill-manifest.yaml +3 -0
- package/src/xmc/workflows/4-implementation/xiaoma-code-review/SKILL.md +6 -0
- package/src/xmc/workflows/4-implementation/xiaoma-code-review/checklist.md +23 -0
- package/src/xmc/workflows/4-implementation/xiaoma-code-review/discover-inputs.md +88 -0
- package/src/xmc/workflows/4-implementation/xiaoma-code-review/steps/step-01-gather-context.md +61 -0
- package/src/xmc/workflows/4-implementation/xiaoma-code-review/steps/step-02-review.md +41 -0
- package/src/xmc/workflows/4-implementation/xiaoma-code-review/steps/step-03-triage.md +50 -0
- package/src/xmc/workflows/4-implementation/xiaoma-code-review/steps/step-04-present.md +38 -0
- package/src/xmc/workflows/4-implementation/xiaoma-code-review/workflow.md +54 -0
- package/src/xmc/workflows/4-implementation/xiaoma-code-review/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/4-implementation/xiaoma-correct-course/SKILL.md +6 -0
- package/src/xmc/workflows/4-implementation/xiaoma-correct-course/checklist.md +288 -0
- package/src/xmc/workflows/4-implementation/xiaoma-correct-course/workflow.md +267 -0
- package/src/xmc/workflows/4-implementation/xiaoma-correct-course/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/4-implementation/xiaoma-create-story/SKILL.md +6 -0
- package/src/xmc/workflows/4-implementation/xiaoma-create-story/checklist.md +357 -0
- package/src/xmc/workflows/4-implementation/xiaoma-create-story/discover-inputs.md +88 -0
- package/src/xmc/workflows/4-implementation/xiaoma-create-story/template.md +49 -0
- package/src/xmc/workflows/4-implementation/xiaoma-create-story/workflow.md +380 -0
- package/src/xmc/workflows/4-implementation/xiaoma-create-story/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/4-implementation/xiaoma-dev-story/SKILL.md +6 -0
- package/src/xmc/workflows/4-implementation/xiaoma-dev-story/checklist.md +80 -0
- package/src/xmc/workflows/4-implementation/xiaoma-dev-story/workflow.md +450 -0
- package/src/xmc/workflows/4-implementation/xiaoma-dev-story/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/4-implementation/xiaoma-retrospective/SKILL.md +6 -0
- package/src/xmc/workflows/4-implementation/xiaoma-retrospective/workflow.md +1479 -0
- package/src/xmc/workflows/4-implementation/xiaoma-retrospective/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/4-implementation/xiaoma-sprint-planning/SKILL.md +6 -0
- package/src/xmc/workflows/4-implementation/xiaoma-sprint-planning/checklist.md +33 -0
- package/src/xmc/workflows/4-implementation/xiaoma-sprint-planning/sprint-status-template.yaml +56 -0
- package/src/xmc/workflows/4-implementation/xiaoma-sprint-planning/workflow.md +263 -0
- package/src/xmc/workflows/4-implementation/xiaoma-sprint-planning/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/4-implementation/xiaoma-sprint-status/SKILL.md +6 -0
- package/src/xmc/workflows/4-implementation/xiaoma-sprint-status/workflow.md +261 -0
- package/src/xmc/workflows/4-implementation/xiaoma-sprint-status/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/SKILL.md +6 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/checklist.md +37 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/steps/step-01-init-and-validate.md +152 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/steps/step-02-run-requirements-pipeline.md +120 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/steps/step-03-bridge-sprint-planning.md +119 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/steps/step-04-run-story-pipeline.md +114 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/steps/step-05-finalize.md +194 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/workflow.md +108 -0
- package/src/xmc/workflows/5-full-pipeline/auto-full-pipeline/xiaoma-skill-manifest.yaml +3 -0
- package/src/xmc/workflows/5-full-pipeline/auto-prd-to-stories/SKILL.md +6 -0
- package/src/xmc/workflows/5-full-pipeline/auto-prd-to-stories/checklist.md +43 -0
- package/src/xmc/workflows/5-full-pipeline/auto-prd-to-stories/steps/step-01-init-and-validate.md +155 -0
- package/src/xmc/workflows/5-full-pipeline/auto-prd-to-stories/steps/step-02-create-epics.md +156 -0
- package/src/xmc/workflows/5-full-pipeline/auto-prd-to-stories/steps/step-03-bridge-sprint-planning.md +143 -0
- package/src/xmc/workflows/5-full-pipeline/auto-prd-to-stories/steps/step-04-batch-create-stories.md +309 -0
- package/src/xmc/workflows/5-full-pipeline/auto-prd-to-stories/steps/step-05-finalize.md +311 -0
- package/src/xmc/workflows/5-full-pipeline/auto-prd-to-stories/workflow.md +105 -0
- package/src/xmc/workflows/5-full-pipeline/auto-prd-to-stories/xiaoma-skill-manifest.yaml +3 -0
- package/src/xmc/workflows/xiaoma-document-project/SKILL.md +6 -0
- package/src/xmc/workflows/xiaoma-document-project/checklist.md +245 -0
- package/src/xmc/workflows/xiaoma-document-project/documentation-requirements.csv +12 -0
- package/src/xmc/workflows/xiaoma-document-project/instructions.md +128 -0
- package/src/xmc/workflows/xiaoma-document-project/templates/deep-dive-template.md +345 -0
- package/src/xmc/workflows/xiaoma-document-project/templates/index-template.md +169 -0
- package/src/xmc/workflows/xiaoma-document-project/templates/project-overview-template.md +103 -0
- package/src/xmc/workflows/xiaoma-document-project/templates/project-scan-report-schema.json +160 -0
- package/src/xmc/workflows/xiaoma-document-project/templates/source-tree-template.md +135 -0
- package/src/xmc/workflows/xiaoma-document-project/workflow.md +27 -0
- package/src/xmc/workflows/xiaoma-document-project/workflows/deep-dive-instructions.md +299 -0
- package/src/xmc/workflows/xiaoma-document-project/workflows/deep-dive-workflow.md +34 -0
- package/src/xmc/workflows/xiaoma-document-project/workflows/full-scan-instructions.md +1107 -0
- package/src/xmc/workflows/xiaoma-document-project/workflows/full-scan-workflow.md +34 -0
- package/src/xmc/workflows/xiaoma-document-project/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/xiaoma-generate-project-context/SKILL.md +6 -0
- package/src/xmc/workflows/xiaoma-generate-project-context/project-context-template.md +21 -0
- package/src/xmc/workflows/xiaoma-generate-project-context/steps/step-01-discover.md +186 -0
- package/src/xmc/workflows/xiaoma-generate-project-context/steps/step-02-generate.md +321 -0
- package/src/xmc/workflows/xiaoma-generate-project-context/steps/step-03-complete.md +278 -0
- package/src/xmc/workflows/xiaoma-generate-project-context/workflow.md +43 -0
- package/src/xmc/workflows/xiaoma-generate-project-context/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/xiaoma-qa-generate-e2e-tests/SKILL.md +6 -0
- package/src/xmc/workflows/xiaoma-qa-generate-e2e-tests/checklist.md +33 -0
- package/src/xmc/workflows/xiaoma-qa-generate-e2e-tests/workflow.md +136 -0
- package/src/xmc/workflows/xiaoma-qa-generate-e2e-tests/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/SKILL.md +6 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/steps/step-01-mode-detection.md +169 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/steps/step-02-context-gathering.md +114 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/steps/step-03-execute.md +107 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/steps/step-04-self-check.md +107 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/steps/step-05-adversarial-review.md +94 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/steps/step-06-resolve-findings.md +144 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/workflow.md +38 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev-new-preview/SKILL.md +6 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev-new-preview/steps/step-01-clarify-and-route.md +51 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev-new-preview/steps/step-02-plan.md +35 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev-new-preview/steps/step-03-implement.md +33 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev-new-preview/steps/step-04-review.md +50 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev-new-preview/steps/step-05-present.md +17 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev-new-preview/tech-spec-template.md +90 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev-new-preview/workflow.md +79 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev-new-preview/xiaoma-skill-manifest.yaml +1 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-spec/SKILL.md +6 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-spec/steps/step-01-understand.md +185 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-spec/steps/step-02-investigate.md +140 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-spec/steps/step-03-generate.md +123 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-spec/steps/step-04-review.md +195 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-spec/tech-spec-template.md +74 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-spec/workflow.md +73 -0
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-spec/xiaoma-skill-manifest.yaml +1 -0
- package/src/xpm/agents/patent-advisor.agent.yaml +30 -0
- package/src/xpm/module.yaml +26 -0
- package/src/xpm/skills/xiaoma-patent-mining/SKILL.md +6 -0
- package/src/xpm/skills/xiaoma-patent-mining/references/disclosure-template.md +84 -0
- package/src/xpm/skills/xiaoma-patent-mining/references/docx-format-spec.md +183 -0
- package/src/xpm/skills/xiaoma-patent-mining/references/mining-principles.md +168 -0
- package/src/xpm/skills/xiaoma-patent-mining/scripts/md2docx.js +777 -0
- package/src/xpm/skills/xiaoma-patent-mining/steps/step-01-project-analysis.md +65 -0
- package/src/xpm/skills/xiaoma-patent-mining/steps/step-02-patent-mining.md +87 -0
- package/src/xpm/skills/xiaoma-patent-mining/steps/step-03-disclosure-writing.md +110 -0
- package/src/xpm/skills/xiaoma-patent-mining/steps/step-04-ai-taste-removal.md +85 -0
- package/src/xpm/skills/xiaoma-patent-mining/steps/step-05-docx-generation.md +111 -0
- package/src/xpm/skills/xiaoma-patent-mining/workflow.md +94 -0
- package/src/xpm/skills/xiaoma-patent-mining/xiaoma-skill-manifest.yaml +1 -0
- package/tools/cli/README.md +60 -0
- package/tools/cli/commands/install.js +87 -0
- package/tools/cli/commands/status.js +65 -0
- package/tools/cli/commands/uninstall.js +167 -0
- package/tools/cli/external-official-modules.yaml +6 -0
- package/tools/cli/installers/install-messages.yaml +9 -0
- package/tools/cli/installers/lib/core/config-collector.js +1285 -0
- package/tools/cli/installers/lib/core/custom-module-cache.js +260 -0
- package/tools/cli/installers/lib/core/dependency-resolver.js +742 -0
- package/tools/cli/installers/lib/core/detector.js +223 -0
- package/tools/cli/installers/lib/core/ide-config-manager.js +157 -0
- package/tools/cli/installers/lib/core/installer.js +3216 -0
- package/tools/cli/installers/lib/core/manifest-generator.js +1374 -0
- package/tools/cli/installers/lib/core/manifest.js +1042 -0
- package/tools/cli/installers/lib/custom/handler.js +358 -0
- package/tools/cli/installers/lib/ide/_base-ide.js +673 -0
- package/tools/cli/installers/lib/ide/_config-driven.js +1058 -0
- package/tools/cli/installers/lib/ide/manager.js +304 -0
- package/tools/cli/installers/lib/ide/platform-codes.js +100 -0
- package/tools/cli/installers/lib/ide/platform-codes.yaml +321 -0
- package/tools/cli/installers/lib/ide/shared/agent-command-generator.js +181 -0
- package/tools/cli/installers/lib/ide/shared/module-injections.js +136 -0
- package/tools/cli/installers/lib/ide/shared/path-utils.js +364 -0
- package/tools/cli/installers/lib/ide/shared/skill-manifest.js +90 -0
- package/tools/cli/installers/lib/ide/shared/task-tool-command-generator.js +368 -0
- package/tools/cli/installers/lib/ide/shared/workflow-command-generator.js +179 -0
- package/tools/cli/installers/lib/ide/shared/xiaoma-artifacts.js +181 -0
- package/tools/cli/installers/lib/ide/templates/agent-command-template.md +14 -0
- package/tools/cli/installers/lib/ide/templates/combined/antigravity.md +8 -0
- package/tools/cli/installers/lib/ide/templates/combined/default-agent.md +15 -0
- package/tools/cli/installers/lib/ide/templates/combined/default-task.md +10 -0
- package/tools/cli/installers/lib/ide/templates/combined/default-tool.md +10 -0
- package/tools/cli/installers/lib/ide/templates/combined/default-workflow.md +6 -0
- package/tools/cli/installers/lib/ide/templates/combined/gemini-agent.toml +14 -0
- package/tools/cli/installers/lib/ide/templates/combined/gemini-task.toml +11 -0
- package/tools/cli/installers/lib/ide/templates/combined/gemini-tool.toml +11 -0
- package/tools/cli/installers/lib/ide/templates/combined/gemini-workflow-yaml.toml +16 -0
- package/tools/cli/installers/lib/ide/templates/combined/gemini-workflow.toml +14 -0
- package/tools/cli/installers/lib/ide/templates/combined/kiro-agent.md +16 -0
- package/tools/cli/installers/lib/ide/templates/combined/kiro-task.md +9 -0
- package/tools/cli/installers/lib/ide/templates/combined/kiro-tool.md +9 -0
- package/tools/cli/installers/lib/ide/templates/combined/kiro-workflow.md +7 -0
- package/tools/cli/installers/lib/ide/templates/combined/opencode-agent.md +15 -0
- package/tools/cli/installers/lib/ide/templates/combined/opencode-task.md +13 -0
- package/tools/cli/installers/lib/ide/templates/combined/opencode-tool.md +13 -0
- package/tools/cli/installers/lib/ide/templates/combined/opencode-workflow-yaml.md +16 -0
- package/tools/cli/installers/lib/ide/templates/combined/opencode-workflow.md +16 -0
- package/tools/cli/installers/lib/ide/templates/combined/rovodev.md +9 -0
- package/tools/cli/installers/lib/ide/templates/combined/trae.md +9 -0
- package/tools/cli/installers/lib/ide/templates/combined/windsurf-workflow.md +10 -0
- package/tools/cli/installers/lib/ide/templates/split/.gitkeep +0 -0
- package/tools/cli/installers/lib/message-loader.js +83 -0
- package/tools/cli/installers/lib/modules/external-manager.js +136 -0
- package/tools/cli/installers/lib/modules/manager.js +1387 -0
- package/tools/cli/lib/activation-builder.js +165 -0
- package/tools/cli/lib/agent/compiler.js +516 -0
- package/tools/cli/lib/agent/installer.js +680 -0
- package/tools/cli/lib/agent/template-engine.js +152 -0
- package/tools/cli/lib/agent-analyzer.js +97 -0
- package/tools/cli/lib/agent-party-generator.js +203 -0
- package/tools/cli/lib/cli-utils.js +182 -0
- package/tools/cli/lib/config.js +213 -0
- package/tools/cli/lib/file-ops.js +204 -0
- package/tools/cli/lib/platform-codes.js +116 -0
- package/tools/cli/lib/project-root.js +75 -0
- package/tools/cli/lib/prompts.js +809 -0
- package/tools/cli/lib/ui.js +1960 -0
- package/tools/cli/lib/xml-handler.js +177 -0
- package/tools/cli/lib/xml-to-markdown.js +82 -0
- package/tools/{yaml-format.js → cli/lib/yaml-format.js} +39 -71
- package/tools/cli/lib/yaml-xml-builder.js +570 -0
- package/tools/cli/xiaoma-cli.js +106 -0
- package/tools/lib/xml-utils.js +13 -0
- package/tools/platform-codes.yaml +157 -0
- package/tools/schema/agent.js +489 -0
- package/tools/validate-svg-changes.sh +356 -0
- package/tools/xiaoma-npx-wrapper.js +18 -24
- package//344/270/223/345/210/251/344/272/244/345/272/225/344/271/246_1_/351/235/242/345/220/221AI/346/231/272/350/203/275/344/275/223/347/232/204/345/244/232/351/200/232/351/201/223/344/276/235/350/265/226_20260318.md +483 -0
- package//344/270/223/345/210/251/344/272/244/345/272/225/344/271/246_2_/345/237/272/344/272/216/351/205/215/347/275/256/351/251/261/345/212/250/347/232/204/350/267/250/345/271/263/345/217/260IDE/346/231/272/350/203/275_20260318.md +592 -0
- package//344/270/223/345/210/251/344/272/244/345/272/225/344/271/246_3_AI/346/231/272/350/203/275/344/275/223/345/243/260/346/230/216/345/274/217/345/256/232/344/271/211/347/232/204/347/274/226/350/257/221/346/265/201/346/260/264_20260318.md +624 -0
- package//344/270/223/345/210/251/344/272/244/345/272/225/344/271/246_4_/345/237/272/344/272/216/345/223/210/345/270/214/346/214/207/347/272/271/347/232/204/346/231/272/350/203/275/344/275/223/351/231/204/345/261/236/350/265/204/346/272/220/351/200/211_20260318.md +628 -0
- package//344/270/223/345/210/251/344/272/244/345/272/225/344/271/246_5_AI/346/231/272/350/203/275/344/275/223/350/247/246/345/217/221/346/214/207/344/273/244/347/232/204/345/244/215/345/220/210/346/240/274/345/274/217/346/240/241_20260318.md +652 -0
- package/.claude/agents/tech-translator.md +0 -124
- package/.claude/settings.local.json +0 -37
- package/.idea/XiaoMa-Cli.iml +0 -9
- package/.idea/inspectionProfiles/Project_Default.xml +0 -6
- package/.idea/misc.xml +0 -6
- package/.idea/modules.xml +0 -8
- package/.idea/prettier.xml +0 -6
- package/.idea/vcs.xml +0 -7
- package/.idea/workspace.xml +0 -117
- package/.xiaoma-core/.coordinator-state.json +0 -19
- package/JAVA-BACKEND-COMMANDS-REFERENCE.md +0 -300
- package/JAVA-BACKEND-ITERATION-GUIDE.md +0 -2116
- package/common/tasks/create-doc.md +0 -103
- package/common/tasks/execute-checklist.md +0 -88
- package/common/utils/bmad-doc-template.md +0 -327
- package/common/utils/workflow-management.md +0 -71
- package/dist/agents/analyst.txt +0 -6308
- package/dist/agents/architect.txt +0 -5046
- package/dist/agents/automation-orchestrator.txt +0 -396
- package/dist/agents/dev.txt +0 -1180
- package/dist/agents/full-requirement-orchestrator.txt +0 -505
- package/dist/agents/pm.txt +0 -3078
- package/dist/agents/po.txt +0 -1358
- package/dist/agents/qa.txt +0 -2002
- package/dist/agents/sm.txt +0 -3044
- package/dist/agents/ux-expert.txt +0 -707
- package/dist/agents/workflow-executor.txt +0 -1029
- package/dist/agents/workflow-helper.txt +0 -93
- package/dist/agents/xiaoma-master.txt +0 -9008
- package/dist/agents/xiaoma-orchestrator.txt +0 -1523
- package/dist/teams/team-all.txt +0 -23101
- package/dist/teams/team-fullstack-with-database.txt +0 -25076
- package/dist/teams/team-fullstack.txt +0 -15820
- package/dist/teams/team-ide-minimal.txt +0 -8285
- package/dist/teams/team-no-ui.txt +0 -14368
- package/docs/GUIDING-PRINCIPLES.md +0 -91
- package/docs/architecture/workflow-coordinator-implementation.md +0 -1188
- package/docs/architecture-sharding-modification.md +0 -623
- package/docs/automated-requirements-analysis-outputs.md +0 -896
- package/docs/core-architecture.md +0 -219
- package/docs/enhanced-ide-development-workflow.md +0 -248
- package/docs/prd/workflow-coordinator-prd.md +0 -1214
- package/docs/user-guide.md +0 -530
- package/docs/versioning-and-releases.md +0 -155
- package/docs/versions.md +0 -48
- package/docs/working-in-the-brownfield.md +0 -597
- package/tools/api-server.js +0 -367
- package/tools/builders/web-builder.js +0 -830
- package/tools/bump-all-versions.js +0 -133
- package/tools/cli.js +0 -157
- package/tools/flattener/aggregate.js +0 -94
- package/tools/flattener/binary.js +0 -83
- package/tools/flattener/discovery.js +0 -79
- package/tools/flattener/files.js +0 -35
- package/tools/flattener/ignoreRules.js +0 -177
- package/tools/flattener/main.js +0 -673
- package/tools/flattener/projectRoot.js +0 -211
- package/tools/flattener/prompts.js +0 -46
- package/tools/flattener/stats.helpers.js +0 -424
- package/tools/flattener/stats.js +0 -80
- package/tools/flattener/test-matrix.js +0 -468
- package/tools/flattener/xml.js +0 -96
- package/tools/installer/README.md +0 -8
- package/tools/installer/bin/xiaoma.js +0 -477
- package/tools/installer/config/ide-agent-config.yaml +0 -58
- package/tools/installer/config/install.config.yaml +0 -164
- package/tools/installer/lib/config-loader.js +0 -286
- package/tools/installer/lib/file-manager.js +0 -446
- package/tools/installer/lib/ide-base-setup.js +0 -238
- package/tools/installer/lib/ide-setup.js +0 -2027
- package/tools/installer/lib/installer.js +0 -2333
- package/tools/installer/lib/memory-profiler.js +0 -235
- package/tools/installer/lib/module-manager.js +0 -116
- package/tools/installer/lib/resource-locator.js +0 -334
- package/tools/installer/package-lock.json +0 -715
- package/tools/installer/package.json +0 -44
- package/tools/lib/dependency-resolver.js +0 -186
- package/tools/lib/yaml-utils.js +0 -34
- package/tools/md-assets/web-agent-startup-instructions.md +0 -39
- package/tools/preview-release-notes.js +0 -74
- package/tools/setup-hooks.sh +0 -37
- package/tools/shared/bannerArt.js +0 -105
- package/tools/sync-installer-version.js +0 -41
- package/tools/sync-version.sh +0 -23
- package/tools/upgraders/v3-to-v4-upgrader.js +0 -753
- package/tools/version-bump.js +0 -100
- package/tools/workflow-coordinator/README.md +0 -38
- package/tools/workflow-coordinator/USAGE.md +0 -548
- package/tools/workflow-coordinator/package-lock.json +0 -4868
- package/tools/workflow-coordinator/package.json +0 -35
- package/tools/workflow-coordinator/src/api/server.js +0 -207
- package/tools/workflow-coordinator/src/controller/workflow-controller.js +0 -263
- package/tools/workflow-coordinator/src/index.js +0 -113
- package/tools/workflow-coordinator/src/parser/workflow-parser.js +0 -144
- package/tools/workflow-coordinator/src/utils/state-manager.js +0 -59
- package/tools/workflow-coordinator/src/utils/validator.js +0 -86
- package/tools/workflow-coordinator/test/integration-test.js +0 -266
- package/tools/workflow-coordinator/test/quick-test.js +0 -127
- package/xiaoma-core/agent-teams/team-all.yaml +0 -15
- package/xiaoma-core/agent-teams/team-fullstack-with-database.yaml +0 -27
- package/xiaoma-core/agent-teams/team-fullstack.yaml +0 -19
- package/xiaoma-core/agent-teams/team-ide-minimal.yaml +0 -11
- package/xiaoma-core/agent-teams/team-no-ui.yaml +0 -14
- package/xiaoma-core/agents/analyst.md +0 -91
- package/xiaoma-core/agents/architect.md +0 -88
- package/xiaoma-core/agents/automated-fix-validator.yaml +0 -579
- package/xiaoma-core/agents/automated-quality-validator.yaml +0 -549
- package/xiaoma-core/agents/automation-orchestrator.md +0 -353
- package/xiaoma-core/agents/dev.md +0 -144
- package/xiaoma-core/agents/enhanced-workflow-orchestrator.yaml +0 -304
- package/xiaoma-core/agents/full-requirement-orchestrator.md +0 -462
- package/xiaoma-core/agents/global-requirements-auditor.yaml +0 -520
- package/xiaoma-core/agents/intelligent-template-adapter.yaml +0 -389
- package/xiaoma-core/agents/issue-dispatcher.yaml +0 -627
- package/xiaoma-core/agents/master-execution-engine.yaml +0 -543
- package/xiaoma-core/agents/pm.md +0 -85
- package/xiaoma-core/agents/po.md +0 -77
- package/xiaoma-core/agents/qa.md +0 -88
- package/xiaoma-core/agents/requirements-coverage-auditor.yaml +0 -373
- package/xiaoma-core/agents/sm.md +0 -125
- package/xiaoma-core/agents/ux-expert.md +0 -67
- package/xiaoma-core/agents/workflow-executor.md +0 -1031
- package/xiaoma-core/agents/workflow-helper.md +0 -481
- package/xiaoma-core/agents/xiaoma-master.md +0 -108
- package/xiaoma-core/agents/xiaoma-orchestrator.md +0 -145
- package/xiaoma-core/checklists/architect-checklist.md +0 -440
- package/xiaoma-core/checklists/change-checklist.md +0 -184
- package/xiaoma-core/checklists/dev-completion-checklist.md +0 -324
- package/xiaoma-core/checklists/pm-checklist.md +0 -372
- package/xiaoma-core/checklists/po-master-checklist.md +0 -434
- package/xiaoma-core/checklists/po-story-validation-checklist.md +0 -219
- package/xiaoma-core/checklists/qa-approval-checklist.md +0 -393
- package/xiaoma-core/checklists/story-dod-checklist.md +0 -96
- package/xiaoma-core/checklists/story-draft-checklist.md +0 -155
- package/xiaoma-core/core-config.yaml +0 -23
- package/xiaoma-core/data/bmad-kb.md +0 -809
- package/xiaoma-core/data/brainstorming-techniques.md +0 -38
- package/xiaoma-core/data/elicitation-methods.md +0 -156
- package/xiaoma-core/data/technical-preferences.md +0 -5
- package/xiaoma-core/data/test-levels-framework.md +0 -148
- package/xiaoma-core/data/test-priorities-matrix.md +0 -174
- package/xiaoma-core/scripts/build-validation/pre-dev-validation.sh +0 -71
- package/xiaoma-core/scripts/build-validation/progressive-validation.sh +0 -88
- package/xiaoma-core/scripts/build-validation/quick-check.sh +0 -69
- package/xiaoma-core/tasks/advanced-elicitation.md +0 -119
- package/xiaoma-core/tasks/analyze-existing-database.md +0 -155
- package/xiaoma-core/tasks/apply-qa-fixes.md +0 -150
- package/xiaoma-core/tasks/automated-story-cycle.md +0 -370
- package/xiaoma-core/tasks/batch-story-generation.md +0 -354
- package/xiaoma-core/tasks/brownfield-create-epic.md +0 -162
- package/xiaoma-core/tasks/brownfield-create-story.md +0 -149
- package/xiaoma-core/tasks/correct-course.md +0 -72
- package/xiaoma-core/tasks/create-brownfield-story.md +0 -314
- package/xiaoma-core/tasks/create-database-design.md +0 -161
- package/xiaoma-core/tasks/create-deep-research-prompt.md +0 -280
- package/xiaoma-core/tasks/create-enhanced-story-with-database.md +0 -250
- package/xiaoma-core/tasks/create-incremental-architecture.md +0 -525
- package/xiaoma-core/tasks/create-next-story.md +0 -114
- package/xiaoma-core/tasks/create-prd-from-rag.md +0 -435
- package/xiaoma-core/tasks/create-story-with-rag.md +0 -559
- package/xiaoma-core/tasks/develop-story-with-rag.md +0 -536
- package/xiaoma-core/tasks/document-project.md +0 -345
- package/xiaoma-core/tasks/facilitate-brainstorming-session.md +0 -138
- package/xiaoma-core/tasks/generate-ai-frontend-prompt.md +0 -53
- package/xiaoma-core/tasks/generate-database-ddl.md +0 -240
- package/xiaoma-core/tasks/generate-database-entities.md +0 -501
- package/xiaoma-core/tasks/generate-rag-questions.md +0 -312
- package/xiaoma-core/tasks/index-docs.md +0 -175
- package/xiaoma-core/tasks/kb-mode-interaction.md +0 -77
- package/xiaoma-core/tasks/nfr-assess.md +0 -345
- package/xiaoma-core/tasks/project-integration-testing.md +0 -477
- package/xiaoma-core/tasks/qa-gate.md +0 -163
- package/xiaoma-core/tasks/requirement-analysis-with-rag.md +0 -1318
- package/xiaoma-core/tasks/requirements-coverage-audit.md +0 -198
- package/xiaoma-core/tasks/review-story.md +0 -316
- package/xiaoma-core/tasks/risk-profile.md +0 -355
- package/xiaoma-core/tasks/serial-development-orchestration.md +0 -426
- package/xiaoma-core/tasks/shard-doc.md +0 -187
- package/xiaoma-core/tasks/test-design.md +0 -176
- package/xiaoma-core/tasks/trace-requirements.md +0 -266
- package/xiaoma-core/tasks/validate-next-story.md +0 -136
- package/xiaoma-core/templates/api-design-tmpl.yaml +0 -704
- package/xiaoma-core/templates/architecture-tmpl.yaml +0 -650
- package/xiaoma-core/templates/brainstorming-output-tmpl.yaml +0 -156
- package/xiaoma-core/templates/brownfield-architecture-tmpl.yaml +0 -476
- package/xiaoma-core/templates/brownfield-prd-tmpl.yaml +0 -280
- package/xiaoma-core/templates/competitor-analysis-tmpl.yaml +0 -336
- package/xiaoma-core/templates/database-design-tmpl.yaml +0 -266
- package/xiaoma-core/templates/enhanced-story-with-database-tmpl.yaml +0 -428
- package/xiaoma-core/templates/front-end-architecture-tmpl.yaml +0 -272
- package/xiaoma-core/templates/front-end-spec-tmpl.yaml +0 -354
- package/xiaoma-core/templates/fullstack-architecture-tmpl.yaml +0 -925
- package/xiaoma-core/templates/global-qa-monitoring-tmpl.yaml +0 -443
- package/xiaoma-core/templates/incremental-architecture-tmpl.yaml +0 -601
- package/xiaoma-core/templates/market-research-tmpl.yaml +0 -252
- package/xiaoma-core/templates/maven-lombok-template.xml +0 -111
- package/xiaoma-core/templates/prd-from-rag-tmpl.yaml +0 -410
- package/xiaoma-core/templates/prd-tmpl.yaml +0 -202
- package/xiaoma-core/templates/project-brief-tmpl.yaml +0 -221
- package/xiaoma-core/templates/qa-gate-tmpl.yaml +0 -102
- package/xiaoma-core/templates/rag-knowledge-tmpl.yaml +0 -569
- package/xiaoma-core/templates/rag-questions-tmpl.yaml +0 -949
- package/xiaoma-core/templates/requirements-coverage-audit.yaml +0 -330
- package/xiaoma-core/templates/start-enhanced-workflow.yaml +0 -347
- package/xiaoma-core/templates/story-tmpl.yaml +0 -137
- package/xiaoma-core/templates/story-with-rag-tmpl.yaml +0 -360
- package/xiaoma-core/workflows/automated-requirements-analysis.yaml +0 -2149
- package/xiaoma-core/workflows/automated-requirements-development.yaml +0 -739
- package/xiaoma-core/workflows/automated-story-development.yaml +0 -1264
- package/xiaoma-core/workflows/brownfield-fullstack.yaml +0 -298
- package/xiaoma-core/workflows/brownfield-service.yaml +0 -188
- package/xiaoma-core/workflows/brownfield-ui.yaml +0 -198
- package/xiaoma-core/workflows/enhanced-fullstack-with-database.yaml +0 -427
- package/xiaoma-core/workflows/enhanced-fullstack-with-qa-loop.yaml +0 -766
- package/xiaoma-core/workflows/full-requirement-automation.yaml +0 -1305
- package/xiaoma-core/workflows/greenfield-fullstack.yaml +0 -241
- package/xiaoma-core/workflows/greenfield-service.yaml +0 -207
- package/xiaoma-core/workflows/greenfield-ui.yaml +0 -236
|
@@ -0,0 +1,624 @@
|
|
|
1
|
+
**技术交底书**
|
|
2
|
+
|
|
3
|
+
**交底书名称:**一种AI智能体声明式定义的编译及激活块注入方法及系统
|
|
4
|
+
**本专利发明人:**刘二杨
|
|
5
|
+
**技术问题联系人:**刘二杨
|
|
6
|
+
**联系人电话:**(待填写)
|
|
7
|
+
**E-MAIL:**liueryang@yljr.com
|
|
8
|
+
|
|
9
|
+
# 该发明所属技术领域
|
|
10
|
+
|
|
11
|
+
本发明涉及计算机软件技术领域,具体涉及一种将 AI 智能体的声明式 YAML 定义编译为可执行 XML 格式的流水线方法,以及基于智能体特征分析的激活块按需组装注入方法。
|
|
12
|
+
|
|
13
|
+
# 术语解释
|
|
14
|
+
|
|
15
|
+
| 术语 | 中文/英文全称 | 一句话定义 |
|
|
16
|
+
| --- | --- | --- |
|
|
17
|
+
| 声明式 YAML 定义 | Declarative Agent YAML | 以 YAML 格式声明智能体的 metadata、persona、menu、prompts 等结构化字段 |
|
|
18
|
+
| 激活块 | Activation Block | 编译后智能体文件中嵌入的 XML 指令集,定义运行时初始化、菜单处理、交互规则 |
|
|
19
|
+
| 片段缓存 | Fragment Cache | 内存中的 Map 结构,缓存已加载的激活块片段文件,避免重复 I/O |
|
|
20
|
+
| 智能体特征分析 | Agent Profile Analysis | 对智能体 menu 字段的静态扫描,确定该智能体实际使用了哪些处理器类型 |
|
|
21
|
+
| AgentAnalyzer / ActivationBuilder | — | 执行特征分析的模块(输出 `usedAttributes` Set 和 `hasPrompts` 标志);按需组装激活块片段的模块 |
|
|
22
|
+
| usedAttributes / hasPrompts | — | 特征分析输出的处理器属性集合(元素来自 `{exec, tmpl, data, action}`);prompts 段落是否存在的标志位 |
|
|
23
|
+
| 处理器 | Handler | 菜单项中决定指令执行方式的属性,包含 exec / tmpl / data / action 四类 |
|
|
24
|
+
| 模板引擎 / 占位符 | Template Engine / Placeholder | 将占位符与数据上下文渲染为目标字符串的程序模块;模板中可被替换的标记,如 `{{var}}`、`{{#if var}}` |
|
|
25
|
+
| superRefine | Zod superRefine | Zod 库的高级校验机制,在基础结构校验通过后执行跨字段关联校验 |
|
|
26
|
+
| Zod | Zod Schema Library | TypeScript/JavaScript 运行时数据校验库 |
|
|
27
|
+
| JSON Patch | RFC 6902 | 一种描述 JSON 文档变更的标准格式,支持 add / remove / replace 操作符(仅用于 §6 替代方案比较)|
|
|
28
|
+
| 编译产物 | Compilation Output | 三阶段流水线的最终输出,含 Markdown frontmatter 与可执行 XML |
|
|
29
|
+
| 制品 / 模块 | Artifact / Module | 框架中可独立编排和分发的逻辑单元;一组共享配置变量、目录约定与命名空间的制品集合,如 `core`、`xmc` |
|
|
30
|
+
|
|
31
|
+
# 1、详细介绍技术背景,并描述已有的与本发明最相近似的实现方案
|
|
32
|
+
|
|
33
|
+
AI 智能体框架中,智能体的定义通常采用声明式格式(如 YAML)以降低编写门槛。本框架 v1.12.0 `src/xmc/agents/` 下共 8 个智能体声明式定义文件,分别承载 analyst、architect、dev、pm、qa、quick-flow-solo-dev、sm、ux-designer 八个角色。但 AI IDE 在实际执行时需要解析结构化的指令格式(如 XML),因此需要一个编译过程将声明式定义转换为可执行格式。
|
|
34
|
+
|
|
35
|
+
现有相近做法主要有两类。
|
|
36
|
+
|
|
37
|
+
**做法一:全量模板替换**——预先定义一个包含所有可能组件的完整 XML 模板,编译时将 YAML 字段值填入模板中的占位符。这种做法存在三类问题:
|
|
38
|
+
|
|
39
|
+
| 问题类型 | 具体表现 | 根因 |
|
|
40
|
+
| --- | --- | --- |
|
|
41
|
+
| XML 膨胀 | 简单智能体(如只用 `exec` 处理器)也会注入 `tmpl`/`data`/`action` 等全部处理器代码 | 模板不区分智能体特征,按"最大集"渲染 |
|
|
42
|
+
| 定制化与模板处理时序冲突 | 用户定制内容中含 `{{var}}` 时被模板引擎误解析;或模板变量被定制数据覆盖 | 合并与替换的执行顺序未严格隔离 |
|
|
43
|
+
| 片段重复加载 | 批量编译多个智能体时,相同片段文件被重复从磁盘读取 | 无内存缓存机制 |
|
|
44
|
+
|
|
45
|
+
不同类型的智能体使用的处理器组合差异很大——一个简单的分析师智能体可能只用 `exec`(执行工作流)处理器,而高级架构师智能体可能同时用 `exec`、`tmpl`(模板渲染)、`data`(数据加载)、`action`(动作触发)四种处理器。全量模板方式会为只用 `exec` 处理器的智能体也注入 `tmpl`、`data`、`action` 的处理器代码,产生明显的冗余 XML 内容(具体冗余比例与智能体复杂度反相关——越简单的智能体冗余越严重)。
|
|
46
|
+
|
|
47
|
+
此外,用户可能需要在基础智能体定义基础上追加额外的菜单项、关键操作、记忆条目等,同时保留基础定义中的模板变量(如 `{{project_name}}`)。如果定制合并和模板变量替换的执行顺序不当,会出现定制内容被模板引擎误处理、或模板变量被定制数据覆盖的问题。
|
|
48
|
+
|
|
49
|
+
**做法二:开源 AI 智能体框架(如 BMAD-METHOD)的编译流程**——BMAD-METHOD(公开仓库 `bmad-code-org/BMAD-METHOD`,MIT 许可)作为本领域代表性开源方案,亦实现了从声明式 YAML 到可执行 XML/Markdown 的转换流程。其已公开实现包括 YAML 解析、占位符替换、激活块拼接等基础编译能力,可视为做法一在 AI 智能体框架场景的具体实例。但其公开实现**未披露**以下机制:(i) 编译产物的确定性指纹(Reproducible Build);(ii) 基于特征向量差分的增量编译;(iii) 定制字段集合 ∩ 模板可注入字段集合的代数冲突检测;(iv) 跨智能体的片段共享缓存层;(v) 三阶段顺序的代数必要性反证。本方案在此类已有开源编译流程的基础上,针对上述工程空白提出系统性改进。
|
|
50
|
+
|
|
51
|
+
# 2、现有技术的缺点是什么?针对这些缺点,说明本发明的目的
|
|
52
|
+
|
|
53
|
+
| 现有缺陷 | 具体表现 | 本发明对应目的 |
|
|
54
|
+
| --- | --- | --- |
|
|
55
|
+
| 全量激活块注入导致 XML 膨胀 | 在本框架 v1.12.0 的 8 个智能体(`src/xmc/agents/`)中,简单智能体(仅含 `exec` 处理器、无 prompts、无 memories)若按"全量模板"渲染会被注入 `handler-tmpl`、`handler-data`、`handler-action`、`prompts-wrapper` 等本智能体并未使用的段落 | 基于特征分析按需组装片段,仅注入实际使用的处理器 |
|
|
56
|
+
| 定制化合并时序错误 | 先模板后合并 → 定制中的 `{{}}` 被误解析;先合并后模板 → 定制中的 persona 等非模板字段被扫描处理 | 严格三阶段时序:定制合并 → 模板替换 → XML 生成 |
|
|
57
|
+
| 片段文件重复加载 | 批量编译 8 智能体若无缓存会对相同片段文件(`activation-init.txt`、`menu-handlers.txt`、`activation-rules.txt` 等通用片段)发起重复 I/O | Map-based 片段缓存,首次加载后驻留内存 |
|
|
58
|
+
|
|
59
|
+
本发明目的:提供一种基于智能体特征分析的编译流水线,先分析每个智能体实际使用的处理器类型,再按需组装激活块片段,并通过"定制合并 → 模板替换 → XML 生成"三阶段严格时序避免定制化与模板处理的冲突,同时使用片段缓存减少重复 I/O。
|
|
60
|
+
|
|
61
|
+
# 3、本发明技术方案的详细阐述
|
|
62
|
+
|
|
63
|
+
## 3.1 基本原理
|
|
64
|
+
|
|
65
|
+
### 3.1.0 形式化总框架:特征向量驱动的按需编译
|
|
66
|
+
|
|
67
|
+
本方法的**形式化总框架**为:对每个智能体 `a` 定义一个特征向量 `FV(a)`(详见 §3.2.8 形式化定义),所有编译动作以 `FV(a)` 为控制信号执行选择性输出;三阶段串行(定制合并 → 模板替换 → XML 生成)是本框架下的**具体调度形态**而非框架本身。
|
|
68
|
+
|
|
69
|
+
智能体编译的本质是从"声明"到"可执行"的转换过程。本方案借鉴编译器优化中的"死代码消除"(Dead Code Elimination)与"常数折叠"(Constant Folding)思路——这两类优化都依赖一个共同前提:先对程序做静态分析(确定哪些代码段对最终输出有贡献),再按分析结果做选择性输出。本方法把这一思路在 AI 智能体编译场景下落地为:
|
|
70
|
+
|
|
71
|
+
- **特征向量提取**:先对 YAML 声明做特征分析(抽取实际使用的 handler 类型集合 + prompts 存在标志),输出"实际用到了哪些片段"的形式化特征向量 `FV(a)`(§3.2.8);
|
|
72
|
+
- **选择性输出**:再按 `FV(a)` 按需加载和拼接片段(仅注入用到的 handler 片段),输出最终可执行 XML;
|
|
73
|
+
- **指纹化与差分化**:将 `FV(a)` 与源/定制/片段哈希拼接为编译产物指纹(§3.2.9),并以 `delta_FV` 为单位做增量编译(§3.2.10);FV 等价的智能体共享同一拼接产物(§3.2.12)。
|
|
74
|
+
|
|
75
|
+
三阶段串行架构(§3.2.1-§3.2.7)作为本框架下的具体调度形态,其代数必要性反证(§3.1.1)保证调度顺序的唯一性,但本方法的**新颖性核心在于 FV 形式化与按需编译,而非三阶段调度本身**——三阶段流水线作为工程规范在本领域已属常见,但以 FV 五元组形式驱动选择性输出、指纹化、差分化、等价类共享的整体架构未见同等组合。
|
|
76
|
+
|
|
77
|
+
整个编译流程被分解为三个严格串行的阶段:**定制合并 → 模板替换 → XML 生成**。三阶段之间的边界是绝对的——定制数据在阶段 1 结束时就从待处理 answers 中移除,确保阶段 2 的模板引擎完全接触不到非模板数据;阶段 3 的特征分析也在合并后的 YAML 上进行,避免在尚未合并完成的中间状态做判断。
|
|
78
|
+
|
|
79
|
+
### 3.1.1 三阶段严格串行的必要性反证
|
|
80
|
+
|
|
81
|
+
三阶段顺序不能任意调整。下表给出"若改序则何处出错"的反证,证明 (1 → 2 → 3) 是唯一一个无歧义的执行序:
|
|
82
|
+
|
|
83
|
+
| 改序方案 | 立即破坏的不变量 | 具体错误示例 |
|
|
84
|
+
| --- | --- | --- |
|
|
85
|
+
| (2 → 1 → 3):先模板,再合并 | 阶段 2 输入还含有定制数据中的 `{{}}` | 定制 `customize.yaml` 中含有用户原样写入的提示词模板字符串 `{{project_name}}`,模板引擎会试图替换它,但此时 `project_name` 并不在 answers 中,于是字符串被清空或抛错——而本意是把这段字符串作为字面量传入最终产物 |
|
|
86
|
+
| (1 → 3 → 2):先合并,跳到 XML 生成,再做模板替换 | 阶段 3 产物已是 XML 而非 YAML,模板引擎需新增 XML 解析能力 | 阶段 2 不得不在 XML 字符串上做正则替换,破坏 `<handler-exec>` 等结构化标签里嵌入的占位符语法;当占位符出现在标签属性 `desc="{{role}}"` 中时引号转义引发解析错误 |
|
|
87
|
+
| (3 → 1 → 2):先 XML 生成,再合并 | 阶段 1 的"分字段类型合并"无标的物可操作 | XML 是树状结构,metadata 的深度合并、prompts 的按 ID 去重等都需要 YAML 字段级访问能力;改在 XML 上做合并要求重新实现 XPath/XSLT,相当于推翻 §3.2.1 整套合并策略 |
|
|
88
|
+
|
|
89
|
+
由此推出:阶段 1 必须先于阶段 2(否则定制中的字面量 `{{}}` 被误处理),阶段 2 必须先于阶段 3(否则模板引擎需面对 XML),阶段 3 必须最后(否则合并无标的)。三阶段顺序是唯一可行的拓扑序。
|
|
90
|
+
|
|
91
|
+
## 3.2 详细的技术方案
|
|
92
|
+
|
|
93
|
+
### 3.2.1 阶段 1:定制化合并
|
|
94
|
+
|
|
95
|
+
阶段 1 的对外入口的输入与输出契约:编译单个智能体的入口接收三个参数——**智能体声明式 YAML 原文**(字符串形态,含 metadata、persona、menu、prompts 等结构化字段)、**用户定制数据对象**(含 `customize.yaml` 各字段与模板变量的合并体)、**可选项**(包含是否构建 Web 端 bundle、源文件路径、是否清空片段缓存等控制项)。整条三阶段流水的最终产出形态为 "Markdown frontmatter + 可执行 XML" 的复合 Markdown 文本;阶段 1 的中间产出为合并后的中间 YAML 结构(含 metadata / persona / menu / prompts 等字段);阶段 3 的特征分析产出为 "实际使用的处理器属性集合(来自 `exec` / `tmpl` / `data` / `action` 的集合)" 与 "prompts 存在标志位" 两个字段;此外可附加缓存命中次数、I/O 次数、总耗时等可观测统计项供后续诊断使用。
|
|
96
|
+
|
|
97
|
+
阶段 1 接收上述原始 YAML 字符串与用户定制化数据后,合并按以下策略**分字段类型执行**:
|
|
98
|
+
|
|
99
|
+
| 字段 | 合并策略 | 规则细节 |
|
|
100
|
+
| --- | --- | --- |
|
|
101
|
+
| `metadata` | 对象深度合并 | 用 `filterCustomizationData` 递归过滤 null/undefined/空字符串后,`Object.assign` 浅合并到基础 metadata;非空值覆盖基础值 |
|
|
102
|
+
| `persona` | 整体替换 | 因 persona 各字段高度关联,部分覆盖可能导致不一致,故采用全量替换策略 |
|
|
103
|
+
| `critical_actions` | 数组追加 | `[...existing, ...customizations.critical_actions]`,保留基础定义中的所有操作 |
|
|
104
|
+
| `memories` | 数组追加 | 逻辑同 critical_actions |
|
|
105
|
+
| `menu` | 数组追加 | 用户定制的菜单项添加到基础菜单末尾 |
|
|
106
|
+
| `prompts` | 数组追加(当前实现)/ 按 ID 去重合并(优选实施例) | 见下文 3.2.2 |
|
|
107
|
+
|
|
108
|
+
合并 YAML 的 before/after 样例:
|
|
109
|
+
|
|
110
|
+
```yaml
|
|
111
|
+
# 基础 YAML (base.yaml)
|
|
112
|
+
metadata:
|
|
113
|
+
id: po
|
|
114
|
+
module: xmc
|
|
115
|
+
persona:
|
|
116
|
+
role: Product Owner
|
|
117
|
+
critical_actions:
|
|
118
|
+
- "读取用户故事"
|
|
119
|
+
prompts:
|
|
120
|
+
- id: code-review
|
|
121
|
+
role: system
|
|
122
|
+
content: "基础提示词"
|
|
123
|
+
|
|
124
|
+
# 定制 customize.yaml
|
|
125
|
+
metadata:
|
|
126
|
+
team: 风控
|
|
127
|
+
critical_actions:
|
|
128
|
+
- "在 Linear 同步状态"
|
|
129
|
+
prompts:
|
|
130
|
+
- id: code-review # 同 ID 触发去重合并
|
|
131
|
+
content: "覆盖后的提示词"
|
|
132
|
+
- id: deploy-check # 新 ID 触发追加
|
|
133
|
+
|
|
134
|
+
# 合并结果
|
|
135
|
+
metadata: { id: po, module: xmc, team: 风控 } # 深度合并
|
|
136
|
+
persona: { role: Product Owner } # 未覆盖(定制中未给出)
|
|
137
|
+
critical_actions:
|
|
138
|
+
- "读取用户故事"
|
|
139
|
+
- "在 Linear 同步状态" # 追加
|
|
140
|
+
prompts:
|
|
141
|
+
- id: code-review
|
|
142
|
+
role: system
|
|
143
|
+
content: "覆盖后的提示词" # 同 ID 覆盖
|
|
144
|
+
- id: deploy-check
|
|
145
|
+
role: system
|
|
146
|
+
content: ... # 新 ID 追加
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
所有 `customizationKeys` 处理完毕后,从 `answers` 中移除这些键,剩余的键值对作为模板变量传递给阶段 2。**这是解决"定制合并与模板处理冲突"的关键设计**——通过在阶段 1 就将定制数据从 `answers` 中分离,确保阶段 2 的模板引擎不会接触到非模板类数据。
|
|
150
|
+
|
|
151
|
+
**实现位置**:`tools/cli/lib/yaml-xml-builder.js` 中 `YamlXmlBuilder` 类的定制合并方法(文件总长 570 行,定制合并相关逻辑位于第 59-137 行附近的字段分发分支中)。
|
|
152
|
+
|
|
153
|
+
### 3.2.2 prompts 合并语义:当前实现与优选实施例
|
|
154
|
+
|
|
155
|
+
本节披露 prompts 数组的合并语义。鉴于该字段对定制成本敏感(一个智能体可能含 50+ 条 prompts),本方法提供两级语义供工程实现选择:
|
|
156
|
+
|
|
157
|
+
**当前代码实现(数组追加,简单实施例)**:将定制 prompts 数组整体追加到基础 prompts 数组末尾,**不按 ID 去重**。若基础与定制有同 ID 条目,结果中会同时存在两条;上层消费者(如 IDE)通常以"后出现者优先"语义读取,相当于隐式覆盖。该实现位于 `tools/cli/lib/yaml-xml-builder.js`,与 `critical_actions`、`memories`、`menu` 三个字段共用同一追加策略,逻辑统一、实现成本最低。
|
|
158
|
+
|
|
159
|
+
**优选实施例(按 ID 去重合并,作为方法专利的可实施例描述)**:
|
|
160
|
+
|
|
161
|
+
遍历定制 prompts 数组,对每个定制 prompt 执行:
|
|
162
|
+
|
|
163
|
+
1. 用 `findIndex` 在基础 prompts 中按 `id` 字段查找;
|
|
164
|
+
2. 若存在相同 ID:**替换**(用定制版本完全取代基础版本,未在定制中给出的字段不保留基础值——这是显式覆盖语义);
|
|
165
|
+
3. 若不存在:**追加**到基础 prompts 末尾。
|
|
166
|
+
|
|
167
|
+
该语义使用户能以最小的 YAML 片段精确覆盖某一条 prompt 而无需复制整个 prompts 数组;同时清单中不会出现两条同 ID 记录,避免下游依赖隐式优先级。在 50+ prompts 的复杂智能体场景中,定制文件行数可降至与"被覆盖 prompt 数量"线性相关(每条 1-3 行),相比追加策略下的整数组复制开销大幅减少;同 ID 记录的去重也使产物 XML 中 prompts 段不再出现"同 ID 双条目"现象。
|
|
168
|
+
|
|
169
|
+
两级语义均落在"分字段类型的定制化合并策略"权利要求范围内:base 与 customize 的合并是有类型敏感性的(数组类的追加、对象类的深度合并、按 ID 类的去重合并),核心创新点在于"针对不同字段语义选择不同合并策略"这一架构决策。后续版本计划将 prompts 升级至按 ID 去重合并语义,与当前实现完全兼容(行为退化条件:定制集中无与基础同 ID 的条目)。
|
|
170
|
+
|
|
171
|
+
### 3.2.3 阶段 2:模板变量替换
|
|
172
|
+
|
|
173
|
+
本节描述阶段 2 的"条件块解析 + 占位符替换 + install_config 剥离"完整模板处理协议。在仅做定制合并而无需按用户答案裁剪 YAML 内容的简化场景下,本阶段可退化为"直接透传 + install_config 剥离"两步——此时三阶段架构本身不变(阶段 1 输出仍流经阶段 2 进入阶段 3),仅模板引擎的工作量降为零。
|
|
174
|
+
|
|
175
|
+
`extractInstallConfig` 函数从 YAML 中提取 `install_config` 配置块,`getDefaultValues` 函数扫描其中的 `questions` 数组获取各字段的默认值。将默认值与用户提供的答案合并(用户答案优先)后,调用 `processAgentYaml` 函数执行替换。
|
|
176
|
+
|
|
177
|
+
模板引擎支持三种条件语法:
|
|
178
|
+
|
|
179
|
+
- `{{#if varname}}...{{/if}}`
|
|
180
|
+
- `{{#unless varname}}...{{/unless}}`
|
|
181
|
+
- `{{#if varname == "value"}}...{{/if}}`
|
|
182
|
+
|
|
183
|
+
处理顺序为:先处理条件块(可能包含变量引用)→ 再处理变量替换 → 最后清理未替换的占位符。这种两遍处理使条件块内的变量也能正确替换。替换完成后调用 `stripInstallConfig` 移除 `install_config` 块,使编译输出不包含安装配置信息。
|
|
184
|
+
|
|
185
|
+
**嵌套条件块处理规则**:当出现 `{{#if outer}}...{{#if inner}}...{{/if}}...{{/if}}` 等嵌套形式时,模板引擎采用"从外到内逐层求值"策略:
|
|
186
|
+
|
|
187
|
+
1. **逐层求值**:以最外层条件块为根,先判定其布尔值——若为 false,整段直接剔除(含内层未求值的占位符),不再下钻;若为 true,移除外层 `{{#if}}` / `{{/if}}` 标记后递归处理内层;
|
|
188
|
+
2. **深度上限**:嵌套深度默认上限为 3 层,超过则保留原文不替换并写 `warn` 级告警(不抛异常),便于人工排查超嵌套场景;该上限来源于实测——v1.12.0 仓库中所有现存模板嵌套深度均 ≤2 层,留 1 层余量;
|
|
189
|
+
3. **括号配对**:使用栈结构匹配 `{{#if}}` 与 `{{/if}}`,若发现不配对(如多 `{{#if}}` 少 `{{/if}}`),抛 `UnbalancedConditionBlock` 异常并定位到首个不配对标签的字符偏移;
|
|
190
|
+
4. **同名占位符在条件块内外的语义一致**:`{{var}}` 在条件块内被替换的值与块外被替换的值完全一致(同一 `answers` 字典查询),不引入条件块本地作用域,避免代理人理解负担。
|
|
191
|
+
|
|
192
|
+
之所以不引入 Handlebars 等成熟模板引擎,是基于"编译总耗时 < 50ms"的硬性目标——Handlebars 首次加载约 30ms、单次渲染 5-8ms,会让单智能体编译耗时翻倍;当前的轻量正则替换足以覆盖现有占位符模式。
|
|
193
|
+
|
|
194
|
+
### 3.2.4 阶段 3:XML 生成与激活块按需注入
|
|
195
|
+
|
|
196
|
+
此阶段包含三个子步骤:
|
|
197
|
+
|
|
198
|
+
**子步骤 A — 智能体特征分析**:`AgentAnalyzer.analyzeAgentObject` 方法扫描 `agent.menu` 数组中所有菜单项。对传统格式菜单项,检查是否存在 `exec`、`tmpl`、`data`、`action` 属性。对 multi 格式菜单项,递归检查 `triggers` 数组中嵌套 handler 的 `route`、`action`、`data`、`tmpl` 属性。扫描结果经集合去重后输出为 `usedAttributes` 特征集合(如 `{"exec", "tmpl"}`),同时检测是否存在 prompts 段落输出 `hasPrompts` 标志。
|
|
199
|
+
|
|
200
|
+
**子步骤 B — 激活块按需组装**:`ActivationBuilder` 根据特征分析结果加载片段文件:
|
|
201
|
+
|
|
202
|
+
1. **通用片段先行**:`activation-init.txt`(初始化指令)、`menu-handlers.txt`(菜单基础处理器)、`activation-rules.txt`(交互规则);
|
|
203
|
+
2. **处理器片段按需**:仅当特征集合中包含 `exec` 标识时才加载 `handler-exec.txt`,包含 `tmpl` 标识时加载 `handler-tmpl.txt`,以此类推;
|
|
204
|
+
3. **prompts 片段条件**:仅当 `hasPrompts === true` 时才加载 `prompts-wrapper.txt`。
|
|
205
|
+
|
|
206
|
+
**子步骤 C — XML 拼接输出**:按以下顺序拼接:Markdown frontmatter(含 `name` 和 `description`)→ XML 代码块开始标记 → `<agent>` 开放标签(含 `id`、`name`、`title`、`icon`、`capabilities` 属性)→ 激活块 → `<persona>` 段 → `<prompts>` 段(若有)→ `<memories>` 段(若有)→ `<menu>` 段 → `</agent>` 闭合标签 → 代码块结束标记。其中 `<menu>` 段自动注入固定的系统菜单项(`MH` 菜单帮助、`CH` 自由聊天、`PM` 派对模式、`DA` 退出智能体)包裹用户定义的菜单项。
|
|
207
|
+
|
|
208
|
+
"简单智能体"的工程定义(用于本节 XML 体积量化的对照基准):满足以下三个条件之一即归入"简单智能体"类——(a) `usedAttributes` 集合 ⊆ {exec}(即 menu 中所有菜单项仅使用 exec 处理器,不出现 tmpl/data/action);(b) `hasPrompts === false` 且 `memories` 为空;(c) 不含 `menu.multi` 嵌套结构。三条件并非互斥,符合任意一条即可——v1.12.0 工作树 8 个智能体中有约半数落入此类(如 analyst、qa、ux-designer 等基础角色),其余为含 tmpl/data 的复合智能体。该定义仅用于 §4 表"XML 体积"行的量化对照基准,不影响权利要求保护范围。
|
|
209
|
+
|
|
210
|
+
一个简单分析师智能体(仅含 `exec` 处理器,无 prompts、无 memories)的编译输出完整样例如下(约 20 行):
|
|
211
|
+
|
|
212
|
+
```markdown
|
|
213
|
+
---
|
|
214
|
+
name: analyst
|
|
215
|
+
description: "[A] 业务分析师智能体,专长需求挖掘与领域建模"
|
|
216
|
+
---
|
|
217
|
+
|
|
218
|
+
```xml
|
|
219
|
+
<agent id="analyst" name="Analyst" title="业务分析师" icon="🔍" capabilities="research,brainstorm">
|
|
220
|
+
<activation>
|
|
221
|
+
<init>读取项目上下文 → 加载 user/project memory → 准备菜单</init>
|
|
222
|
+
<handler-exec>菜单项含 exec 时,调用 workflow 执行器</handler-exec>
|
|
223
|
+
<rules>遵守 communication_style;非菜单输入走 fuzzy match</rules>
|
|
224
|
+
</activation>
|
|
225
|
+
<persona role="业务分析师" style="结构化、追问式" />
|
|
226
|
+
<menu>
|
|
227
|
+
<item trigger="MH" desc="[MH] 显示菜单帮助" action="menu-help" />
|
|
228
|
+
<item trigger="A or fuzzy match on analyze" desc="[A] 启动分析工作流" exec="{project-root}/xiaoma/xmc/workflows/1-analysis/analyze.md" />
|
|
229
|
+
<item trigger="CH" desc="[CH] 自由聊天" action="chat" />
|
|
230
|
+
<item trigger="PM" desc="[PM] 派对模式" action="party" />
|
|
231
|
+
<item trigger="DA" desc="[DA] 退出智能体" action="exit" />
|
|
232
|
+
</menu>
|
|
233
|
+
</agent>
|
|
234
|
+
```
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
对照"全量模板"模式下的等效产出会含有 `handler-tmpl`、`handler-data`、`handler-action`、`prompts-wrapper` 等本智能体并未使用的段落;本方法的特征分析机制按需仅注入 `handler-exec`,对简单智能体(仅 `exec`、无 prompts、无 memories)可裁掉以上未使用段落,压缩比与冗余段落数线性相关。
|
|
238
|
+
|
|
239
|
+
**实现位置**:智能体特征分析见 `tools/cli/lib/agent-analyzer.js`(97 行,第 7 行起 `class AgentAnalyzer`、第 13 行起 `analyzeAgentObject()`);激活块按需组装见 `tools/cli/lib/activation-builder.js`(165 行);XML 拼接与三阶段流水主入口见 `tools/cli/lib/yaml-xml-builder.js`(570 行);菜单结构的 Zod 校验见 `tools/schema/agent.js`(489 行,第 80 行起的首个 `superRefine`)。
|
|
240
|
+
|
|
241
|
+
### 3.2.5 Map-based 片段缓存与 clearCache 机制
|
|
242
|
+
|
|
243
|
+
片段加载使用 Map 作为内存缓存——首次加载时读取文件并存入 Map(key 为片段路径,value 为内容),后续编译直接从 Map 中获取。当前工程版本已实现 Map 缓存 + 进程冷启动失效两种机制。
|
|
244
|
+
|
|
245
|
+
`clearCache` 方法支持开发环境的热重载,触发条件包括:
|
|
246
|
+
|
|
247
|
+
1. **配置变更(可实施例)**:检测到框架根目录 `mtime` 较 Map 中记录的 mtime 更新时,自动清空缓存;该路径作为方法专利的可选实施例,在 IDE 监听文件变更场景下接入;
|
|
248
|
+
2. **手动 CLI flag(可实施例)**:调用 `xiaoma compile --no-cache` 时强制清空;该 flag 作为 CLI 入口扩展的实施例;
|
|
249
|
+
3. **进程冷启动(已实现)**:Node 进程重启时 Map 自然失效。
|
|
250
|
+
|
|
251
|
+
在生产环境批量编译中,缓存命中率较高——首批片段(`activation-init.txt`、`menu-handlers.txt`、`activation-rules.txt` 等通用片段)加载后,后续 v1.12.0 工作树的 8 个智能体的编译复用同一份缓存。
|
|
252
|
+
|
|
253
|
+
### 3.2.6 multi 格式菜单的递归处理
|
|
254
|
+
|
|
255
|
+
`menu.multi` 字段支持嵌套结构(一组 triggers 可以再包含子 triggers)。本方案对递归扫描的设计如下:
|
|
256
|
+
|
|
257
|
+
1. **基础递归扫描**:`AgentAnalyzer` 与 `ActivationBuilder` 对 multi 字段执行递归扫描,遵循自然递归终止条件——遍历完所有叶节点后退出;实际场景中嵌套深度通常 ≤3 层;
|
|
258
|
+
2. **栈深度软上限**:作为防御异常输入的扩展实施例,可通过深度计数器在递归入口处累加,达到配置上限(默认 8 层)时记录日志并截断处理,不抛异常以免单条非法配置阻塞整批编译;
|
|
259
|
+
3. **特征分析与渲染同步递归**:`AgentAnalyzer` 与 `ActivationBuilder` 共用同一递归遍历协议,确保特征向量与实际渲染保持一致。
|
|
260
|
+
|
|
261
|
+
**深度上限触发的反例**:当 menu.items 引用自身或形成环(例如 `multi.triggers[0].sub.triggers[0].sub.triggers[0]...` 无限自嵌套),或人为构造极深嵌套(>8 层)时,递归深度计数器在 `depth > MAX_DEPTH(=8)` 时记录如下结构的日志并截断该分支:
|
|
262
|
+
|
|
263
|
+
```
|
|
264
|
+
{
|
|
265
|
+
"event": "MULTI_MENU_DEPTH_EXCEEDED",
|
|
266
|
+
"agent_id": "analyst",
|
|
267
|
+
"menu_path": "menu[2].multi.triggers[0].sub.triggers[0]....sub.triggers[0]",
|
|
268
|
+
"depth_at_truncation": 9,
|
|
269
|
+
"soft_cap": 8,
|
|
270
|
+
"action": "truncate-branch-continue",
|
|
271
|
+
"severity": "warn"
|
|
272
|
+
}
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
注意:环路(cyclic reference)在 YAML 解析阶段即被 `js-yaml` 库的 `safeLoad`(默认拒绝 anchor 形成的循环)拦截,理论上不会进入 multi 递归;上述深度上限主要针对"非环但极深"的人为输入。另一方面,若 `menu.items` 通过外部数据源动态加载并形成跨智能体的引用环(超出本编译器视野),同样在第 8 层被截断并不传播污染。
|
|
276
|
+
|
|
277
|
+
递归特征分析算法的步骤性描述:
|
|
278
|
+
|
|
279
|
+
1. **入口参数**:算法以"菜单节点"作为待处理输入、"已使用属性集合"作为输出累加器(首次调用时为空集合)、"当前递归深度"作为防御性参数(首次调用时为 0)。
|
|
280
|
+
2. **深度上限保护**:每次进入递归先比较当前深度与预设深度上限(默认 8 层),超过上限时记录一条 `warn` 级告警(包含智能体 id、菜单路径、被截断时的深度、软上限值、降级动作等字段,详见上文反例所示的日志结构)并直接返回已积累的累加器,不抛异常以免单条非法配置阻塞整批编译。
|
|
281
|
+
3. **数组型节点处理**:若当前节点为数组(即 menu 数组本身或 multi 节点下的 triggers 数组),对每个元素以同一深度计数继续递归下钻,子结果合并到同一累加器后返回。
|
|
282
|
+
4. **叶节点的属性抽取**:对单条菜单项,扫描其字段集合,凡出现 `exec` / `tmpl` / `data` / `action` 等指令处理器属性、或 `route` 等等价的子字段时,将其**归一化为对应的 handler 片段标识**写入累加器——其中 `route` 与 `action` 折合为同一片段名(两者在按需组装阶段加载同一份 `handler-action.txt` 片段文件),保证累加器中的元素语义建立在 **handler 片段层面**而非 YAML 字段名层面,避免下游加载阶段出现"字段名不同但片段相同"的重复加载。
|
|
283
|
+
5. **multi 节点的下钻**:若当前节点含嵌套的 `triggers` 数组(multi 格式菜单项),以**深度计数器加 1** 为参数对 triggers 中每个子项继续递归。
|
|
284
|
+
6. **产出**:遍历完成后返回累加器,其元素即为后续按需组装激活块片段所依据的特征向量。
|
|
285
|
+
|
|
286
|
+
### 3.2.7 编译失败处理与降级路径
|
|
287
|
+
|
|
288
|
+
编译流水在以下五类异常输入下定义明确的处理策略,避免单一智能体的缺陷阻塞整批编译:
|
|
289
|
+
|
|
290
|
+
| 异常类型 | 处理策略 | 副作用 |
|
|
291
|
+
| --- | --- | --- |
|
|
292
|
+
| 片段文件缺失(如 `handler-exec.txt` 不存在) | 短路抛出 `FragmentNotFoundError`,记录缺失片段路径与触发智能体 id;批量编译时跳过当前智能体,继续处理后续 | 该智能体不出现在产物目录;安装清单记录 `skipped=true` |
|
|
293
|
+
| YAML 语法错误(阶段 1 解析失败) | 捕获 `YAMLException`,提取 `mark.line/column` 位置,包装为 `AgentParseError` 并附行号;批量编译跳过 | 同上 |
|
|
294
|
+
| 模板变量循环引用(阶段 2 检测出 `{{a}}` → `{{b}}` → `{{a}}`) | 在两遍处理中加访问标志,第二次进入同一占位符即报错;不进入第三遍 | 仅当前智能体编译失败 |
|
|
295
|
+
| 定制合并字段类型不匹配(如基础 `prompts` 是数组、定制给出对象) | 阶段 1 在分字段策略入口做 `Array.isArray` / `typeof` 守卫,类型不一致时抛 `MergePolicyMismatchError` | 同上 |
|
|
296
|
+
| 缓存命中校验失败(片段文件 mtime 更新但 Map 未失效) | `clearCache` 触发后下一次加载强制走文件 I/O;若仍然失败按"片段文件缺失"处理 | Map 缓存清空一次 |
|
|
297
|
+
|
|
298
|
+
所有异常路径下,files-manifest 与 skill-manifest 不写入半成品;产物目录使用临时目录策略——先输出至 `_compile.tmp/`,全批通过后原子 rename 为最终目录。
|
|
299
|
+
|
|
300
|
+
### 3.2.8 特征向量形式化定义
|
|
301
|
+
|
|
302
|
+
§3.2.4 的"智能体特征分析"在工程层面是 `AgentAnalyzer` 扫描 menu 输出 `usedAttributes` 集合与 `hasPrompts` 标志。为使该机制可证明、可比对、可哈希,本方案在专利层面给出形式化定义:
|
|
303
|
+
|
|
304
|
+
设智能体 `a` 的特征向量为五元组:
|
|
305
|
+
|
|
306
|
+
```
|
|
307
|
+
FV(a) ≜ (E(a), T(a), D(a), A(a), M(a))
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
其中各分量的**元素类型**明确定义为:
|
|
311
|
+
|
|
312
|
+
- `E(a) ⊆ {(menu_id, "exec") | menu_id ∈ menu(a)}`,每个元素是"菜单项标识 + handler 类型"二元组;当某菜单项使用 exec 处理器时被纳入;
|
|
313
|
+
- `T(a) ⊆ {(menu_id, "tmpl") | menu_id ∈ menu(a)}`,类似定义;
|
|
314
|
+
- `D(a) ⊆ {(menu_id, "data") | menu_id ∈ menu(a)}`;
|
|
315
|
+
- `A(a) ⊆ {(menu_id, "action") | menu_id ∈ menu(a)}`(按 §3.2.6 步骤 4 已将 `route` 字段归一为 `action`,避免下游加载阶段重复加载同一片段文件);
|
|
316
|
+
- `M(a) ∈ {0, 1}`,prompts 段落是否存在的二值标志(来自 `hasPrompts`)。
|
|
317
|
+
|
|
318
|
+
**两种粒度的实施例**(实施者按需选用):
|
|
319
|
+
|
|
320
|
+
| 粒度 | `E/T/D/A` 元素 | 适用场景 |
|
|
321
|
+
| --- | --- | --- |
|
|
322
|
+
| **细粒度**(默认) | `(menu_id, handler_type)` 二元组 | 支持菜单项级 delta_FV 增量编译(§3.2.10),同一智能体修改单一菜单项时仅重编差分项 |
|
|
323
|
+
| **粗粒度 / bitset 退化** | `E,T,D,A ∈ {0, 1}` 布尔位,整体 FV ∈ `{0,1}^5` | 仅关心"是否注入对应 handler 片段"的简化场景;指纹/共享层仍可工作但 delta 粒度退化为"整 handler 片段重编" |
|
|
324
|
+
|
|
325
|
+
工程实现中两种粒度由配置项 `compile.fv-granularity ∈ {fine, coarse}` 切换。细粒度时 `E(a) ∪ T(a) ∪ D(a) ∪ A(a)` 投影到第二分量后即等于 §3.2.4 的 `usedAttributes`;粗粒度时 `FV(a)` 即 5 个布尔位串。分量化使五个维度可独立比对,便于后续增量编译(§3.2.10)与跨 agent 共享(§3.2.12)。
|
|
326
|
+
|
|
327
|
+
特征向量上定义偏序与等价关系:
|
|
328
|
+
|
|
329
|
+
- 偏序 `FV(a) ⊑ FV(b) ⇐⇒ E(a) ⊆ E(b) ∧ T(a) ⊆ T(b) ∧ D(a) ⊆ D(b) ∧ A(a) ⊆ A(b) ∧ M(a) ≤ M(b)`;
|
|
330
|
+
- 等价 `FV(a) ≡ FV(b) ⇐⇒ E(a) = E(b) ∧ T(a) = T(b) ∧ D(a) = D(b) ∧ A(a) = A(b) ∧ M(a) = M(b)`。
|
|
331
|
+
|
|
332
|
+
偏序关系用于"片段加载集"的子集判断(被加载的片段构成完全格),等价关系用于 §3.2.12 的跨 agent 共享判定。
|
|
333
|
+
|
|
334
|
+
### 3.2.9 编译确定性指纹(Reproducible Build)
|
|
335
|
+
|
|
336
|
+
声明式编译流水的另一重要价值是"同输入必同输出"——这是 CI 流水中防漂移、产物分发去重、回归排查的基础能力。本方案据此引入编译产物的确定性指纹:
|
|
337
|
+
|
|
338
|
+
```
|
|
339
|
+
Fingerprint(a) ≜ SHA-256(
|
|
340
|
+
canonicalize(FV(a)) // 特征向量按 (E,T,D,A,M) 顺序、各集合按字典序输出
|
|
341
|
+
|| HASH(source_canonical(a)) // YAML 源文件的规范化串(去除注释、统一缩进、键按字典序)
|
|
342
|
+
|| HASH(customize_canonical(a))// 用户定制数据的规范化串
|
|
343
|
+
|| HASH(fragment_versions(a)) // 该智能体本次实际加载的片段文件清单与各自内容哈希
|
|
344
|
+
)
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
性质:
|
|
348
|
+
|
|
349
|
+
1. **确定性**:相同 `(FV, source, customize, fragments)` 必产出相同 fingerprint;
|
|
350
|
+
2. **传递性**:若 `Fingerprint(a)` 命中 CI 缓存,可直接复用上次编译产物,无需重新执行三阶段流水;
|
|
351
|
+
3. **诊断性**:当某次 CI 发现产物漂移时,比对四个输入哈希即可立判漂移源(FV 漂、源码漂、定制漂、片段漂);
|
|
352
|
+
4. **不变性**:fingerprint 仅依赖编译输入与片段内容,不依赖编译机的时钟、用户名、环境变量等非业务因素——即便在不同时段不同机器上重新构建,同输入仍产出同 fingerprint。
|
|
353
|
+
|
|
354
|
+
工程上 fingerprint 写入 `files-manifest.json` 的每条产物记录,作为后续 §3.2.10、§3.2.12 的依据。
|
|
355
|
+
|
|
356
|
+
### 3.2.10 增量编译的特征向量差分
|
|
357
|
+
|
|
358
|
+
大型项目下批量编译(如 8 个智能体 × 4 个 IDE 平台 = 32 个产物)的总开销可通过"特征向量差分"显著降低:
|
|
359
|
+
|
|
360
|
+
1. **维护上次编译时的快照**:`compile-snapshot.json` 中记录上次编译时每个智能体的 `(FV, source_hash, customize_hash, fragments_hash, fingerprint)` 五元组;
|
|
361
|
+
2. **本次编译入口判断**:对每个智能体 `a`,先计算本次的 `Fingerprint_new(a)`;若 `Fingerprint_new(a) == Fingerprint_old(a)`,命中缓存,直接复用上次产物,跳过三阶段流水;
|
|
362
|
+
3. **特征差分计算**:未命中时进一步对比 `FV_new vs FV_old`,计算 `delta_FV = FV_new △ FV_old`(对称差);
|
|
363
|
+
4. **按 delta 重编译**:仅对 `delta_FV` 中变化的特征分量重新加载对应片段并重新拼接 XML 的对应段落,其余段落从上次产物中按片段标识复制;
|
|
364
|
+
5. **复杂度退化**:最坏 O(n) 完全等同于全量重编译;典型场景(用户仅修改了某智能体的若干 prompt)退化为 O(|delta|),与变更点规模线性相关而非智能体总数。
|
|
365
|
+
|
|
366
|
+
该机制与 §3.2.5 的 Map 片段缓存正交——Map 缓存解决"同一次编译过程中片段不重读",本节解决"跨编译过程的智能体级缓存"。
|
|
367
|
+
|
|
368
|
+
### 3.2.11 定制 ∩ 模板冲突的代数检测
|
|
369
|
+
|
|
370
|
+
§3.1.1 已给出"先模板后合并"路径的反证:定制中的字面 `{{}}` 会被模板引擎误解析。但在三阶段顺序固定(定制→模板→XML)的前提下仍存在一类隐患——定制数据中的某字段名恰好与模板可注入字段集合存在交集(如用户定制 metadata 字段 `project_name`,与全局模板变量 `{{project_name}}` 同名),此时阶段 1 合并后字段已固定,阶段 2 模板引擎无变量可替换,但读者审阅产物时会误以为这是模板未替换的残留。
|
|
371
|
+
|
|
372
|
+
为此本方案在阶段 1 入口与阶段 2 入口之间插入"代数冲突检测"步骤:
|
|
373
|
+
|
|
374
|
+
设:
|
|
375
|
+
|
|
376
|
+
- `F_customize(a)` = 用户定制数据中所有字段名的集合(含嵌套字段,扁平化后的点路径);
|
|
377
|
+
- `V_template(a)` = 阶段 2 模板引擎可注入的变量名集合(从 `install_config.questions` 抽取);
|
|
378
|
+
|
|
379
|
+
冲突判定:
|
|
380
|
+
|
|
381
|
+
```
|
|
382
|
+
若 F_customize(a) ∩ V_template(a) ≠ ∅
|
|
383
|
+
则记录冲突字段集合并抛 CustomTemplateNamespaceCollision 错误
|
|
384
|
+
```
|
|
385
|
+
|
|
386
|
+
抛错信息包含冲突字段名、定制来源行号、模板变量定义行号,便于用户立即定位与修正(重命名定制字段或模板变量之一)。该机制使"合并产物中残留 `{{var}}` 字符串"的隐患在编译期被截获,而非在 IDE 加载产物时才暴露。
|
|
387
|
+
|
|
388
|
+
### 3.2.12 跨 agent 片段共享层
|
|
389
|
+
|
|
390
|
+
观察 v1.12.0 工作树 8 个智能体的特征向量分布:
|
|
391
|
+
|
|
392
|
+
| 智能体 | FV 类型摘要 | 实际加载的片段集合 |
|
|
393
|
+
| --- | --- | --- |
|
|
394
|
+
| analyst | (E={exec}, T=∅, D=∅, A=∅, M=0) | 通用 + `handler-exec.txt` |
|
|
395
|
+
| qa | (E={exec}, T=∅, D=∅, A=∅, M=0) | 通用 + `handler-exec.txt` |
|
|
396
|
+
| ux-designer | (E={exec}, T=∅, D=∅, A=∅, M=0) | 通用 + `handler-exec.txt` |
|
|
397
|
+
| dev | (E={exec}, T={tmpl}, D=∅, A=∅, M=1) | 通用 + handler-exec + handler-tmpl + prompts-wrapper |
|
|
398
|
+
| pm | (E={exec}, T={tmpl}, D=∅, A=∅, M=1) | 同 dev |
|
|
399
|
+
| architect | (E={exec}, T={tmpl}, D={data}, A=∅, M=1) | 通用 + handler-exec + handler-tmpl + handler-data + prompts-wrapper |
|
|
400
|
+
| sm | (E={exec}, T={tmpl}, D=∅, A=∅, M=1) | 同 dev |
|
|
401
|
+
| po | (E={exec}, T={tmpl}, D={data}, A={action}, M=1) | 通用 + handler-exec/tmpl/data/action + prompts-wrapper |
|
|
402
|
+
|
|
403
|
+
FV 等价的智能体(如 analyst/qa/ux-designer 三者)在阶段 3 拼接出的"激活块段落"完全一致——区别仅在 metadata、persona、menu 具体内容。本方案据此引入跨 agent 片段共享层:
|
|
404
|
+
|
|
405
|
+
1. **激活块缓存键**:以 `HASH(canonicalize(FV(a)))` 为 key,存储该 FV 对应的激活块片段拼接产物;
|
|
406
|
+
2. **首次编译生效**:阶段 3 拼接激活块时先查 key;命中即复用,跳过片段加载与拼接;未命中则正常加载片段、拼接后写入缓存;
|
|
407
|
+
3. **缓存生命周期**:与 Map 片段缓存(§3.2.5)共生灭——所有失效路径同样适用于本层;
|
|
408
|
+
4. **效果**:v1.12.0 工作树下 8 智能体仅产生 4 种不同的激活块拼接产物(FV 等价类数);当智能体数量进一步增长时,激活块拼接开销按等价类数(远小于智能体数)线性增长。
|
|
409
|
+
|
|
410
|
+
# 4、与第1部分所述的现有技术相比,本发明有何优点
|
|
411
|
+
|
|
412
|
+
| 维度 | 全量模板替换 | 部分模板化(手工分片) | 开源 AI 框架编译流程(BMAD-METHOD 等) | 本方案 | 指标改善方向 |
|
|
413
|
+
| --- | --- | --- | --- | --- | --- |
|
|
414
|
+
| XML 体积 | 每智能体注入全部处理器段落 | 手工选择性分片,作者负责维护 | 部分按需注入但未基于形式化特征向量 | 按 `FV(a)` 自动注入 | 简单智能体可大幅压缩,复合智能体接近全量 |
|
|
415
|
+
| 单次编译耗时 | 模板字符串大、替换正则多 | 中间值 | 未披露 | 仅渲染所需片段 + Map 缓存 | 当前 v1.12.0 工作树 8 智能体批量编译可在亚秒级完成 |
|
|
416
|
+
| 批量编译 I/O 次数 | 每智能体重读所有片段 | 部分手工缓存 | 未披露 | Map 缓存首次加载后命中 | 公共片段读 1 次后被所有智能体复用 |
|
|
417
|
+
| 定制粒度 | 整段替换 | 字段级 | 字段级(无显式按 ID 去重披露) | 按字段类型差异化(对象深度合并 / 数组追加 / 可选按 ID 去重) | 最细粒度可覆盖到单条 prompt |
|
|
418
|
+
| 定制 / 模板时序冲突 | 易发生 | 部分可控 | 未披露反证 | 严格三阶段隔离 + 代数必要性反证 | 完全消除 |
|
|
419
|
+
| 编译产物确定性指纹 | 无 | 无 | 无 | `HASH(FV ‖ source ‖ customize ‖ fragments)` | CI 防漂移 / 产物分发去重可证 |
|
|
420
|
+
| 增量编译 | 无 | 无 | 无 | 基于 FV 差分的 `delta_FV` 重编译 | O(n) 退化为 O(|delta|) |
|
|
421
|
+
| 定制 ∩ 模板字段冲突检测 | 无 | 无 | 无 | `F_customize ∩ V_template ≠ ∅` 抛错 | 编译期截获隐性冲突 |
|
|
422
|
+
| 跨 agent 片段共享 | 无 | 无 | 无 | FV 等价类共享激活块拼接产物 | 拼接开销按等价类数(而非智能体数)线性增长 |
|
|
423
|
+
|
|
424
|
+
## 综合有益效果
|
|
425
|
+
|
|
426
|
+
| 维度 | 量化效果 | 数据来源 |
|
|
427
|
+
| --- | --- | --- |
|
|
428
|
+
| 性能 | 单次编译开销集中在 YAML 解析与字符串拼接,无重型依赖(不引入 Handlebars / EJS);批量编译时 Map 片段缓存使通用片段读 1 次即被所有智能体复用 | §3.2.5、§4 表前三行 |
|
|
429
|
+
| 可靠性 | 三阶段架构(定制合并 → 模板替换 → XML 生成)的严格串行隔离消除"定制中的 `{{}}` 被模板引擎误解析"和"模板变量被定制覆盖"两类时序冲突;multi 格式菜单递归遍历已实现,深度上限作为防御异常输入的扩展模式 | §3.1、§3.2.3、§3.2.6 |
|
|
430
|
+
| 易用性 | YAML 声明式输入门槛低,自动得到可执行 XML 输出;按字段类型差异化合并使用户能用最小 YAML 片段覆盖特定字段,而非复制整段 | §3.2.2 |
|
|
431
|
+
| 可维护性 | 激活块按片段独立组织,新增一种处理器只需追加一个 `handler-xxx.txt` 片段并在 AgentAnalyzer 中加入对应识别规则,无需改动模板渲染或合并逻辑;`clearCache` 当前以进程冷启动失效为基础路径,文件 mtime 监测与 CLI flag 触发作为热重载场景的扩展模式 | §3.2.4、§3.2.5 |
|
|
432
|
+
|
|
433
|
+
# 5、本发明的关键点和欲保护点是什么?
|
|
434
|
+
|
|
435
|
+
1. **三阶段编译流水线(代数必要性反证支撑)**:定制合并 → 模板替换 → XML 生成的严格串行执行时序,§3.1.1 三种改序破坏的不变量构成代数必要性反证。
|
|
436
|
+
2. **特征向量驱动的激活块按需组装**:以五元组 `FV(a) = (E, T, D, A, M)` 形式化定义特征向量,`AgentAnalyzer` 扫描 menu 抽取 FV,`ActivationBuilder` 据此选择性加载片段(§3.2.4、§3.2.8)。
|
|
437
|
+
3. **分字段类型的定制化合并策略**:对象类型深度合并(metadata)、数组类型追加合并(menu、critical_actions、memories)、按 ID 去重合并(prompts)。
|
|
438
|
+
4. **Map-based 片段缓存与 clearCache 热重载机制**:使用 Map 存储已加载片段内容,批量编译时避免重复文件 I/O,支持 mtime / CLI flag / 冷启动三种缓存失效路径。
|
|
439
|
+
5. **编译确定性指纹(Reproducible Build)**:`Fingerprint(a) = SHA-256(canonicalize(FV) ‖ HASH(source) ‖ HASH(customize) ‖ HASH(fragments))`;同输入必同输出,可用于 CI 防漂移、产物分发去重、漂移源逐项诊断(§3.2.9)。
|
|
440
|
+
6. **基于特征向量差分的增量编译**:维护编译快照中每个智能体的 FV、源码哈希、定制哈希、片段哈希、指纹;本次编译先比 fingerprint,命中即复用;未命中按 `delta_FV = FV_new △ FV_old` 仅重编差分分量(§3.2.10)。
|
|
441
|
+
7. **定制 ∩ 模板冲突的代数检测**:在阶段 1 与阶段 2 之间检测 `F_customize ∩ V_template`,非空即抛 `CustomTemplateNamespaceCollision` 错误,编译期截获隐性冲突(§3.2.11)。
|
|
442
|
+
8. **跨 agent 片段共享层**:FV 等价类共享激活块拼接产物(以 `HASH(canonicalize(FV))` 为缓存键),拼接开销按等价类数而非智能体数线性增长(§3.2.12)。
|
|
443
|
+
|
|
444
|
+
## 5.5 建议权利要求方向(初稿,供代理人参考)
|
|
445
|
+
|
|
446
|
+
**独立权利要求 1(方法)**:
|
|
447
|
+
|
|
448
|
+
一种声明式 AI 智能体定义的编译方法,其特征在于,包括以下严格串行的三个阶段:
|
|
449
|
+
|
|
450
|
+
- 阶段 A(定制合并):读入智能体的声明式 YAML 与用户定制数据,按字段类型分别采用对象深度合并、数组追加、按标识符去重合并中的至少两种策略合并到统一中间结构,并在阶段结束时将定制字段从待处理数据中移除;
|
|
451
|
+
- 阶段 B(模板替换):仅基于阶段 A 输出的纯净模板变量集合,对中间结构中的占位符进行替换;
|
|
452
|
+
- 阶段 C(基于特征分析的按需 XML 生成):先对所述中间结构的菜单字段做静态扫描,得到该智能体实际使用的处理器类型集合;再仅加载并拼接所述集合对应的激活块片段文件,生成目标 XML 产物。
|
|
453
|
+
|
|
454
|
+
**从属权利要求 2**:
|
|
455
|
+
|
|
456
|
+
根据权利要求 1 所述的方法,其中所述静态扫描包含对嵌套菜单结构(multi 格式)的递归遍历,并在递归入口处设置深度上限阈值;达到所述阈值时截断处理并记录日志,不抛出异常。
|
|
457
|
+
|
|
458
|
+
**从属权利要求 3**:
|
|
459
|
+
|
|
460
|
+
根据权利要求 1 所述的方法,其中所加载的激活块片段文件使用键值映射(Map)缓存于内存中,其失效条件至少包含:(a) 片段文件的修改时间晚于缓存中记录的加载时间;(b) 显式命令行参数请求清空缓存;(c) 进程冷启动;批量编译多个智能体时缓存命中的片段不重复读取磁盘。
|
|
461
|
+
|
|
462
|
+
**从属权利要求 4**:
|
|
463
|
+
|
|
464
|
+
根据权利要求 1 所述的方法,其中阶段 A 的定制合并策略对 prompts 数组采用按 id 字段去重合并:定制中的 prompt 条目若与基础中存在同 id 条目,则以定制条目完全替换基础条目;否则追加至基础数组末尾。
|
|
465
|
+
|
|
466
|
+
**两级合并语义的法律边界(针对 §3.2.2 prompts 双语义)**:
|
|
467
|
+
|
|
468
|
+
- **独立权利要求 1 的保护对象**是"按字段类型差异化合并"这一架构决策本身——只要实施例中存在"两种及以上对应不同字段类型的合并策略"(如对象用深度合并 + 数组用追加合并,或对象深度合并 + 数组追加 + 按 id 去重),即落入权利要求 1 保护范围,与具体策略种类无关;
|
|
469
|
+
- **从属权利要求 4 的保护对象**是"按 id 去重合并"的具体策略实现(替换语义而非补丁语义)。当前工程版本中 prompts 采用数组追加策略(§3.2.2 中的"当前代码实现"),不落入从属权利要求 4 的保护范围,但仍落入独立权利要求 1(metadata 深度合并 + critical_actions 追加合并这两种已构成"至少两种策略");
|
|
470
|
+
- **后续版本将 prompts 升级至按 id 去重合并**(§3.2.2 中的"优选实施例"),落入从属权利要求 4 的保护范围。当前实现与升级实现之间的过渡对法律保护范围不构成断裂——独立权利要求 1 持续覆盖。
|
|
471
|
+
|
|
472
|
+
**从属权利要求 5**:
|
|
473
|
+
|
|
474
|
+
根据权利要求 1 所述的方法,进一步包括对每个智能体计算编译确定性指纹的步骤:所述指纹由密码学哈希函数对以下四项的拼接进行计算——(a) 阶段 C 静态扫描所得特征向量的规范化序列化结果;(b) 智能体声明式 YAML 源文件的规范化序列化结果;(c) 用户定制数据的规范化序列化结果;(d) 阶段 C 加载的全部激活块片段文件清单及各自内容哈希;所述指纹写入安装清单的产物记录字段,用于跨编译过程的产物复用与漂移诊断。
|
|
475
|
+
|
|
476
|
+
**从属权利要求 6**:
|
|
477
|
+
|
|
478
|
+
根据权利要求 1 所述的方法,进一步包括基于特征向量差分的增量编译步骤:维护上一次编译的特征向量与其规范化序列化的指纹(所述指纹的具体形式可独立采用任意密码学哈希函数对所述特征向量的规范化序列化结果计算,亦可选择性地额外拼接源哈希 / 定制哈希 / 片段哈希以构成更强的漂移诊断能力——后者作为本权利要求与权利要求 5 的可组合实施例);本次编译先比对指纹,命中即直接复用上次产物;未命中时进一步计算 `delta_FV` 为本次与上次特征向量的对称差,仅对 `delta_FV` 中变化的分量重新执行片段加载与产物段落拼接,其余段落按片段标识从上次产物中复制。本权利要求**独立于权利要求 5**——即便未实施权利要求 5 的"四项拼接"具体形式,仅以特征向量自身的指纹做差分匹配亦构成本权利要求保护范围。
|
|
479
|
+
|
|
480
|
+
**从属权利要求 7**:
|
|
481
|
+
|
|
482
|
+
根据权利要求 1 所述的方法,进一步包括定制与模板的代数冲突检测步骤:在阶段 A 完成后与阶段 B 开始前,求 `F_customize` 与 `V_template` 的交集,其中 `F_customize` 为定制数据中所有字段名(含嵌套字段扁平化后的路径)的集合,`V_template` 为阶段 B 模板引擎可注入的变量名集合;当所述交集非空时记录冲突字段并抛出冲突错误,错误信息包含冲突字段名、定制来源位置标识与模板变量定义位置标识。
|
|
483
|
+
|
|
484
|
+
**从属权利要求 8**:
|
|
485
|
+
|
|
486
|
+
根据权利要求 1 所述的方法,进一步包括跨智能体片段共享层步骤:以"特征向量的规范化序列化哈希"为缓存键,存储该特征向量对应的激活块片段拼接产物;阶段 C 拼接激活块时先查询所述缓存键,命中即直接复用拼接产物;未命中则正常加载片段、拼接后写入所述缓存;多个智能体若特征向量等价则共享同一拼接产物。
|
|
487
|
+
|
|
488
|
+
**保护范围边界**:本方法不限定 YAML/XML 之外的序列化格式(JSON/TOML 等等效替代)、不限定特定模板语法(Mustache 风格、Handlebars 风格、自实现正则均可),亦不限定 handler 类型的具体集合(exec/tmpl/data/action 为优选实施例);不限定指纹所用的密码学哈希函数(SHA-256 为优选实施例,等价强度的哈希函数为等效替代);不限定差分计算的具体对称差表达方式。
|
|
489
|
+
|
|
490
|
+
# 6、针对第3部分的技术方案,是否还有别的替代方案同样能完成发明目的?
|
|
491
|
+
|
|
492
|
+
| 替代方案 | 核心做法 | 与本方案对比 |
|
|
493
|
+
| --- | --- | --- |
|
|
494
|
+
| 一、全量模板 + 条件注释删除 | 在完整模板中用 `<!-- if:exec -->...<!-- endif -->` 包裹每个处理器段落,编译时按特征结果删除不需要的段落 | 省去片段文件管理,但模板文件膨胀到 800+ 行难维护;条件注释解析仍是字符串操作,可读性差 |
|
|
495
|
+
| 二、JSON Patch 标准合并 | 定制合并采用 RFC 6902 的 add/remove/replace 操作符 | 提供标准化合并语义,但需用户按 JSON Patch 格式编写定制数据,使用门槛高;对中文非程序员用户不友好 |
|
|
496
|
+
| 三、XSLT 转换 | 用 XSLT 模板把 YAML(转 XML 后)变换为目标 XML | 转换能力强但学习成本高,社区生态弱;对 Node.js 项目需引入 XSLT 处理库(增加 200KB+) |
|
|
497
|
+
|
|
498
|
+
# 7、与代表性现有技术的逐项对照
|
|
499
|
+
|
|
500
|
+
| 关键点 | 全量模板替换 | BMAD-METHOD 编译流程 | 通用编译器优化(DCE/常折叠) | Bazel/Buck 增量构建 | 本方案 |
|
|
501
|
+
| --- | --- | --- | --- | --- | --- |
|
|
502
|
+
| 三阶段严格串行(含代数必要性反证) | ✗ | △(顺序未声明反证) | ✗ | ✗ | ✓ |
|
|
503
|
+
| 特征向量形式化(五元组 + 偏序/等价) | ✗ | ✗(仅工程态 `usedAttributes`) | △(IR 元数据但与本场景无对应) | ✗ | ✓ |
|
|
504
|
+
| 按需激活块组装 | ✗(全量) | △(部分) | ✗ | ✗ | ✓ |
|
|
505
|
+
| 分字段类型合并策略 | ✗ | △(追加合并) | ✗ | ✗ | ✓ |
|
|
506
|
+
| Map 片段缓存 + 多失效路径 | ✗ | ✗ | ✗ | ✓(缓存但非片段级) | ✓ |
|
|
507
|
+
| 编译确定性指纹(Reproducible Build) | ✗ | ✗ | ✗ | ✓(输入哈希但非 FV 维度) | ✓ |
|
|
508
|
+
| 增量编译特征向量差分 | ✗ | ✗ | ✗ | ✓(按输入差分但非 FV 差分) | ✓ |
|
|
509
|
+
| 定制 ∩ 模板字段冲突检测 | ✗ | ✗ | ✗ | ✗ | ✓ |
|
|
510
|
+
| 跨 agent 片段共享层(FV 等价类) | ✗ | ✗ | ✗ | △(远程缓存但非 FV 等价类) | ✓ |
|
|
511
|
+
|
|
512
|
+
可见关键点 1、2、7、8、9 在所列代表性现有技术中均未披露;关键点 5、6 在 Bazel/Buck 等通用构建系统中有等价能力但与 AI 智能体特征向量场景未形成对应;关键点 3、4 在 BMAD-METHOD 中有部分披露。
|
|
513
|
+
|
|
514
|
+
# 附图说明
|
|
515
|
+
|
|
516
|
+
**附图1 — 三阶段编译流水线整体流程图**
|
|
517
|
+
|
|
518
|
+

|
|
519
|
+
|
|
520
|
+
YAML 输入 → 阶段 1 定制合并 → 阶段 2 模板替换 → 阶段 3 XML 生成 → 最终输出(含 frontmatter 与可执行 XML)的完整流程。
|
|
521
|
+
|
|
522
|
+
**附图2 — 智能体特征分析与激活块按需组装示意图**
|
|
523
|
+
|
|
524
|
+

|
|
525
|
+
|
|
526
|
+
`AgentAnalyzer` 扫描 menu 得到 `usedAttributes` 特征集合与 `hasPrompts` 标志,`ActivationBuilder` 据此选择性加载 `handler-exec.txt`、`handler-tmpl.txt` 等片段。
|
|
527
|
+
|
|
528
|
+
**附图3 — 分字段类型定制合并策略对比图**
|
|
529
|
+
|
|
530
|
+

|
|
531
|
+
|
|
532
|
+
分别展示深度合并(metadata)、整体替换(persona)、追加合并(critical_actions / menu)、按 ID 去重合并(prompts)等策略的数据流。
|
|
533
|
+
|
|
534
|
+
**附图4 — Map 缓存与 clearCache 触发**
|
|
535
|
+
|
|
536
|
+

|
|
537
|
+
|
|
538
|
+
片段读取请求 → Map 缓存命中判定 → 文件 I/O 或缓存返回;`clearCache` 由 mtime 变更检测、CLI `--no-cache` flag、Node 进程冷启动三类条件触发缓存失效。
|
|
539
|
+
|
|
540
|
+
|
|
541
|
+
## 附图源码(Mermaid,供绘图工程师参考重绘)
|
|
542
|
+
|
|
543
|
+
**附图1 — 三阶段流水线**
|
|
544
|
+
|
|
545
|
+
```mermaid
|
|
546
|
+
flowchart LR
|
|
547
|
+
A[(原始 YAML)] --> S1[阶段1: 定制合并]
|
|
548
|
+
C[(customize.yaml<br/>answers)] --> S1
|
|
549
|
+
S1 -->|合并后 YAML<br/>+ 模板变量集| S2[阶段2: 模板替换]
|
|
550
|
+
S2 -->|纯净 YAML| S3[阶段3: XML 生成]
|
|
551
|
+
S3 --> ANA[AgentAnalyzer<br/>静态特征分析]
|
|
552
|
+
ANA -->|usedAttributes Set<br/>hasPrompts 标志| AB[ActivationBuilder<br/>按需组装]
|
|
553
|
+
AB -->|缓存命中?| MC[(Map 片段缓存)]
|
|
554
|
+
AB --> OUT[(编译产物<br/>frontmatter + XML)]
|
|
555
|
+
```
|
|
556
|
+
|
|
557
|
+
**附图2 — 特征分析与按需组装**
|
|
558
|
+
|
|
559
|
+
```mermaid
|
|
560
|
+
flowchart TB
|
|
561
|
+
subgraph IN[输入 YAML]
|
|
562
|
+
M[menu 数组]
|
|
563
|
+
end
|
|
564
|
+
M --> SC[递归扫描:<br/>exec/tmpl/data/action]
|
|
565
|
+
SC --> US["usedAttributes Set<br/>例: {exec, tmpl}"]
|
|
566
|
+
SC --> HP["hasPrompts: true"]
|
|
567
|
+
US --> AB[ActivationBuilder]
|
|
568
|
+
HP --> AB
|
|
569
|
+
AB --> L1[加载通用片段:<br/>activation-init<br/>menu-handlers<br/>activation-rules]
|
|
570
|
+
AB -->|usedAttributes 包含 exec| L2[+ handler-exec.txt]
|
|
571
|
+
AB -->|usedAttributes 包含 tmpl| L3[+ handler-tmpl.txt]
|
|
572
|
+
AB -.usedAttributes 不含 data.-> X1[跳过 handler-data.txt]
|
|
573
|
+
AB -.usedAttributes 不含 action.-> X2[跳过 handler-action.txt]
|
|
574
|
+
AB -->|hasPrompts == true| L4[+ prompts-wrapper.txt]
|
|
575
|
+
L1 --> AS[XML 拼接输出]
|
|
576
|
+
L2 --> AS
|
|
577
|
+
L3 --> AS
|
|
578
|
+
L4 --> AS
|
|
579
|
+
```
|
|
580
|
+
|
|
581
|
+
**附图3 — 分字段合并策略**
|
|
582
|
+
|
|
583
|
+
```mermaid
|
|
584
|
+
flowchart TD
|
|
585
|
+
subgraph IN[输入]
|
|
586
|
+
B[(base.yaml)]
|
|
587
|
+
C[(customize.yaml)]
|
|
588
|
+
end
|
|
589
|
+
B --> M1[metadata 深度合并]
|
|
590
|
+
C --> M1
|
|
591
|
+
B --> M2[persona 整体替换]
|
|
592
|
+
C --> M2
|
|
593
|
+
B --> M3[critical_actions 追加]
|
|
594
|
+
C --> M3
|
|
595
|
+
B --> M4[menu 追加]
|
|
596
|
+
C --> M4
|
|
597
|
+
B --> M5[prompts 按 ID 去重]
|
|
598
|
+
C --> M5
|
|
599
|
+
M1 --> OUT[(合并结果)]
|
|
600
|
+
M2 --> OUT
|
|
601
|
+
M3 --> OUT
|
|
602
|
+
M4 --> OUT
|
|
603
|
+
M5 --> OUT
|
|
604
|
+
```
|
|
605
|
+
|
|
606
|
+
**附图4 — Map 缓存与 clearCache 触发**
|
|
607
|
+
|
|
608
|
+
```mermaid
|
|
609
|
+
flowchart LR
|
|
610
|
+
R[读取片段请求] --> Q{Map 缓存命中?}
|
|
611
|
+
Q -->|是| GET[(从 Map 取出)]
|
|
612
|
+
Q -->|否| RF[读取文件]
|
|
613
|
+
RF --> SET[(存入 Map)]
|
|
614
|
+
SET --> GET
|
|
615
|
+
GET --> USE[返回片段内容]
|
|
616
|
+
subgraph CLR[clearCache 触发]
|
|
617
|
+
T1[mtime 变更检测]
|
|
618
|
+
T2[CLI --no-cache flag]
|
|
619
|
+
T3[Node 进程冷启动]
|
|
620
|
+
end
|
|
621
|
+
T1 -.失效.-> Q
|
|
622
|
+
T2 -.失效.-> Q
|
|
623
|
+
T3 -.自然失效.-> Q
|
|
624
|
+
```
|