@ohos-cpf/3rdloop 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +425 -0
- package/bin/3rdloop.mjs +48 -0
- package/lib/cli.js +741 -0
- package/lib/config.js +318 -0
- package/lib/doctor.js +114 -0
- package/lib/exit-codes.js +31 -0
- package/lib/opencode.js +156 -0
- package/lib/orch.js +427 -0
- package/lib/queries.js +264 -0
- package/lib/runner.js +979 -0
- package/lib/step.js +326 -0
- package/lib/ui.js +223 -0
- package/lib/workflow.js +291 -0
- package/lib/workflows.js +132 -0
- package/package.json +50 -0
- package/vendor/Server/Agent/SkillSelector/README.md +344 -0
- package/vendor/Server/Agent/SkillSelector/core/Agent.js +207 -0
- package/vendor/Server/Agent/SkillSelector/index.js +14 -0
- package/vendor/Server/Agent/SkillSelector/llm/llmClient.js +313 -0
- package/vendor/Server/Agent/SkillSelector/llm/prompts.js +161 -0
- package/vendor/Server/Agent/SkillSelector/llm/reactSteps.js +144 -0
- package/vendor/Server/Agent/SkillSelector/matcher/fuzzyMatcher.js +433 -0
- package/vendor/Server/Agent/SkillSelector/scanner/skillScanner.js +382 -0
- package/vendor/Server/Agent/SkillSelector/types.js +63 -0
- package/vendor/Server/Agent/SkillSelector/utils/actionWords.js +60 -0
- package/vendor/Server/Brain/AnalysisStrategies.js +422 -0
- package/vendor/Server/Brain/Brain.js +686 -0
- package/vendor/Server/Brain/DecompositionStrategies.js +621 -0
- package/vendor/Server/Brain/PlanPersistence.js +196 -0
- package/vendor/Server/Brain/SkillExecutor.js +251 -0
- package/vendor/Server/Brain/index.js +11 -0
- package/vendor/Server/CLI/cli.js +243 -0
- package/vendor/Server/CLI/opencode/index.js +804 -0
- package/vendor/Server/CLI/opencode.js +5 -0
- package/vendor/Server/DbUse/MessageArchive.js +61 -0
- package/vendor/Server/DbUse/StorageManager.js +107 -0
- package/vendor/Server/DbUse/adapters/BaseAdapter.js +94 -0
- package/vendor/Server/DbUse/adapters/FileAdapter.js +138 -0
- package/vendor/Server/DbUse/adapters/JsonAdapter.js +138 -0
- package/vendor/Server/DbUse/adapters/JsonlAdapter.js +114 -0
- package/vendor/Server/DbUse/adapters/SqliteAdapter.js +157 -0
- package/vendor/Server/DbUse/index.js +160 -0
- package/vendor/Server/DbUse/stores/SessionStore.js +279 -0
- package/vendor/Server/DbUse/stores/TaskExecutionStore.js +133 -0
- package/vendor/Server/DbUse/stores/TaskRegistryStore.js +262 -0
- package/vendor/Server/DbUse/stores/TaskStepStore.js +279 -0
- package/vendor/Server/FlexRunner/FlexRunner.js +1759 -0
- package/vendor/Server/FlexRunner/index.js +12 -0
- package/vendor/Server/Knowledge/KnowledgeImporter.js +523 -0
- package/vendor/Server/Knowledge/KnowledgeManager.js +341 -0
- package/vendor/Server/Knowledge/index.js +33 -0
- package/vendor/Server/LoopEngine/LoopEngine.js +1133 -0
- package/vendor/Server/LoopEngine/index.js +11 -0
- package/vendor/Server/Orchestrator/Orchestrator.js +1425 -0
- package/vendor/Server/Orchestrator/StepNode.js +312 -0
- package/vendor/Server/Orchestrator/index.js +13 -0
- package/vendor/Server/Routes/controllers/BrainController.js +241 -0
- package/vendor/Server/Routes/controllers/FlexRunnerController.js +1125 -0
- package/vendor/Server/Routes/controllers/HealthController.js +44 -0
- package/vendor/Server/Routes/controllers/KnowledgeImportController.js +355 -0
- package/vendor/Server/Routes/controllers/LoopEngineController.js +788 -0
- package/vendor/Server/Routes/controllers/OrchestratorController.js +911 -0
- package/vendor/Server/Routes/controllers/StatsController.js +57 -0
- package/vendor/Server/Routes/controllers/StreamController.js +67 -0
- package/vendor/Server/Routes/library/logger.js +179 -0
- package/vendor/Server/Routes/library/zipArchive.js +172 -0
- package/vendor/Server/Routes/router/Router.js +204 -0
- package/vendor/Server/Routes/routes/brain.js +47 -0
- package/vendor/Server/Routes/routes/flexrunner.js +72 -0
- package/vendor/Server/Routes/routes/health.js +28 -0
- package/vendor/Server/Routes/routes/index.js +57 -0
- package/vendor/Server/Routes/routes/knowledge.js +55 -0
- package/vendor/Server/Routes/routes/loopengine.js +58 -0
- package/vendor/Server/Routes/routes/orchestrator.js +61 -0
- package/vendor/Server/Routes/routes/registry.js +98 -0
- package/vendor/Server/Routes/routes/stats.js +23 -0
- package/vendor/Server/Routes/routes/stream.js +30 -0
- package/vendor/Server/Routes/server.js +202 -0
- package/vendor/Server/Routes/sse/SseHub.js +308 -0
- package/vendor/Server/Skills/acceptance-check/SKILL.md +174 -0
- package/vendor/Server/Skills/acceptance-check/references/PHASE1_ARTIFACT_COLLECTION.md +52 -0
- package/vendor/Server/Skills/acceptance-check/references/PHASE2_CRITERIA_EVALUATION.md +77 -0
- package/vendor/Server/Skills/arkts-code-check/SKILL.md +314 -0
- package/vendor/Server/Skills/arkts-code-check/references/CODE_CHECK_GUIDE.md +160 -0
- package/vendor/Server/Skills/arkts-code-check/references/FILE_TYPE_GUIDE.md +29 -0
- package/vendor/Server/Skills/arkts-code-check/references/PHASE1_INFO_COLLECTION.md +222 -0
- package/vendor/Server/Skills/arkts-code-check/references/REPORT_TEMPLATE.md +220 -0
- package/vendor/Server/Skills/arkts-library-compile-validate/SKILL.md +329 -0
- package/vendor/Server/Skills/arkts-library-compile-validate/scripts/build.ps1 +93 -0
- package/vendor/Server/Skills/arkts-library-compile-validate/scripts/code-linter.cjs +433 -0
- package/vendor/Server/Skills/arkts-library-compile-validate/scripts/migrate.cjs +851 -0
- package/vendor/Server/Skills/arkts-library-compile-validate/scripts/ohpm-switch.cjs +789 -0
- package/vendor/Server/Skills/arkts-library-demo-code/SKILL.md +291 -0
- package/vendor/Server/Skills/arkts-library-demo-code/references/API_SIGNATURE_CHECKS.md +68 -0
- package/vendor/Server/Skills/arkts-library-demo-code/references/BUILD_VALIDATION.md +184 -0
- package/vendor/Server/Skills/arkts-library-demo-code/references/CODE_STANDARDS.md +337 -0
- package/vendor/Server/Skills/arkts-library-demo-code/references/EXAMPLES.md +400 -0
- package/vendor/Server/Skills/arkts-library-demo-code/references/SYSTEM_API_LOOKUP.md +99 -0
- package/vendor/Server/Skills/arkts-library-demo-code/references/TEMPLATE.md +544 -0
- package/vendor/Server/Skills/arkts-library-demo-code/scripts/build.ps1 +93 -0
- package/vendor/Server/Skills/arkts-library-demo-code/scripts/code-linter.cjs +433 -0
- package/vendor/Server/Skills/arkts-library-demo-code/scripts/migrate.cjs +851 -0
- package/vendor/Server/Skills/arkts-library-demo-code/scripts/ohpm-switch.cjs +789 -0
- package/vendor/Server/Skills/arkts-library-demo-coverage/SKILL.md +174 -0
- package/vendor/Server/Skills/arkts-library-demo-scenario/SKILL.md +321 -0
- package/vendor/Server/Skills/arkts-library-demo-scenario/references/EXAMPLES.md +100 -0
- package/vendor/Server/Skills/arkts-library-demo-scenario/references/TEMPLATE.md +185 -0
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/SKILL.md +234 -0
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/assets/REPORT_TEMPLATE.md +103 -0
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/CHECK_DIMENSIONS.md +89 -0
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/COMPLIANCE_CHECKLIST.md +62 -0
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/KB_QUERY_GUIDE.md +108 -0
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/MCP_TOOL_DISCOVERY.md +124 -0
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/REPORT_TEMPLATE.md +90 -0
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/SCORING_FORMULA.md +57 -0
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/scripts/validate-skill.cjs +259 -0
- package/vendor/Server/Skills/arkts-library-interface-spec/SKILL.md +97 -0
- package/vendor/Server/Skills/arkts-library-memory-leak-check/SKILL.md +392 -0
- package/vendor/Server/Skills/arkts-library-source-clone/SKILL.md +113 -0
- package/vendor/Server/Skills/arkts-library-stability-check/SKILL.md +313 -0
- package/vendor/Server/Skills/arkts-library-stability-check/assets/REPORT_TEMPLATE.md +154 -0
- package/vendor/Server/Skills/arkts-library-stability-check/references/CHECKLIST.md +166 -0
- package/vendor/Server/Skills/arkts-library-stability-check/references/CODE_EXAMPLES.md +309 -0
- package/vendor/Server/Skills/arkts-library-stability-check/references/SCORING_RULES.md +90 -0
- package/vendor/Server/Skills/arkts-library-stability-check/scripts/validate-skill.cjs +282 -0
- package/vendor/Server/Skills/arkts-library-test-coverage-check/SKILL.md +361 -0
- package/vendor/Server/Skills/arkts-library-test-coverage-check/assets/REPORT_TEMPLATE.md +146 -0
- package/vendor/Server/Skills/arkts-library-test-coverage-check/references/CHECKLIST.md +253 -0
- package/vendor/Server/Skills/arkts-library-test-coverage-check/references/MCP_TOOL_USAGE.md +115 -0
- package/vendor/Server/Skills/arkts-library-test-coverage-check/scripts/validate-skill.cjs +263 -0
- package/vendor/Server/Skills/arkts-library-xts-code/SKILL.md +455 -0
- package/vendor/Server/Skills/arkts-library-xts-code/assets/report-template.md +60 -0
- package/vendor/Server/Skills/arkts-library-xts-code/references/ACCESS_MODIFIER_PRECHECK.md +76 -0
- package/vendor/Server/Skills/arkts-library-xts-code/references/BUILD_VERIFICATION.md +200 -0
- package/vendor/Server/Skills/arkts-library-xts-code/references/CODE_STANDARDS.md +519 -0
- package/vendor/Server/Skills/arkts-library-xts-code/references/SUBAGENT_PROMPT_TEMPLATE.md +276 -0
- package/vendor/Server/Skills/arkts-library-xts-code/references/SYSTEM_API_LOOKUP.md +93 -0
- package/vendor/Server/Skills/arkts-library-xts-code/references/XTS_TEMPLATE.md +767 -0
- package/vendor/Server/Skills/arkts-library-xts-code/scripts/build.ps1 +93 -0
- package/vendor/Server/Skills/arkts-library-xts-code/scripts/code-linter.cjs +433 -0
- package/vendor/Server/Skills/arkts-library-xts-code/scripts/migrate.cjs +851 -0
- package/vendor/Server/Skills/arkts-library-xts-code/scripts/ohpm-switch.cjs +789 -0
- package/vendor/Server/Skills/arkts-library-xts-code/scripts/precheck-access-modifiers.cjs +221 -0
- package/vendor/Server/Skills/arkts-library-xts-code-fix/SKILL.md +229 -0
- package/vendor/Server/Skills/arkts-library-xts-coverage/SKILL.md +97 -0
- package/vendor/Server/Skills/arkts-library-xts-doc/SKILL.md +194 -0
- package/vendor/Server/Skills/arkts-library-xts-doc/references/EXAMPLES.md +576 -0
- package/vendor/Server/Skills/arkts-library-xts-doc/references/TEMPLATE.md +575 -0
- package/vendor/Server/Skills/arkts-library-xts-doc/references/TESTABILITY_GUIDE.md +182 -0
- package/vendor/Server/Skills/arkts-library-xts-execution/SKILL.md +491 -0
- package/vendor/Server/Skills/arkts-library-xts-execution/references/error-fixing-examples.md +217 -0
- package/vendor/Server/Skills/arkts-library-xts-execution/scripts/build.ps1 +93 -0
- package/vendor/Server/Skills/arkts-library-xts-execution/scripts/code-linter.cjs +433 -0
- package/vendor/Server/Skills/arkts-library-xts-execution/scripts/migrate.cjs +851 -0
- package/vendor/Server/Skills/arkts-library-xts-execution/scripts/ohpm-switch.cjs +789 -0
- package/vendor/Server/Skills/flutter-code-check/SKILL.md +299 -0
- package/vendor/Server/Skills/flutter-code-check/assets/OUTPUT_TEMPLATE.md +312 -0
- package/vendor/Server/Skills/flutter-code-check/references/CHECKLIST.md +190 -0
- package/vendor/Server/Skills/flutter-code-check/references/PLATFORMS.md +134 -0
- package/vendor/Server/Skills/flutter-code-check/scripts/validate-skill.cjs +259 -0
- package/vendor/Server/Skills/flutter-interface/README.md +75 -0
- package/vendor/Server/Skills/flutter-interface/SKILL.md +291 -0
- package/vendor/Server/Skills/flutter-interface/references/EXAMPLES.md +336 -0
- package/vendor/Server/Skills/flutter-interface/references/GIT_CLONE_GUIDE.md +190 -0
- package/vendor/Server/Skills/flutter-interface/references/SCRIPT_REFERENCE.md +258 -0
- package/vendor/Server/Skills/flutter-interface/references/TEMPLATE.md +254 -0
- package/vendor/Server/Skills/flutter-library-consistency-check/SKILL.md +518 -0
- package/vendor/Server/Skills/flutter-library-consistency-check/references/CHECKLIST.md +382 -0
- package/vendor/Server/Skills/flutter-library-consistency-check/references/FUNCTION_COMPARISON_GUIDE.md +342 -0
- package/vendor/Server/Skills/flutter-library-consistency-check/references/PLATFORM_LIMITATION_GUIDE.md +71 -0
- package/vendor/Server/Skills/flutter-library-documentation-quality-check/SKILL.md +519 -0
- package/vendor/Server/Skills/flutter-library-documentation-quality-check/references/CHECKLIST.md +407 -0
- package/vendor/Server/Skills/flutter-library-memory-leak-check/SKILL.md +653 -0
- package/vendor/Server/Skills/flutter-library-memory-leak-check/references/CHECKLIST.md +397 -0
- package/vendor/Server/Skills/flutter-library-stability-check/SKILL.md +745 -0
- package/vendor/Server/Skills/flutter-library-stability-check/references/CHECKLIST.md +721 -0
- package/vendor/Server/Skills/flutter-library-test-coverage-check/SKILL.md +414 -0
- package/vendor/Server/Skills/flutter-library-test-coverage-check/assets/REPORT_TEMPLATE.md +150 -0
- package/vendor/Server/Skills/flutter-library-test-coverage-check/references/CHECKLIST.md +304 -0
- package/vendor/Server/Skills/flutter-library-test-coverage-check/references/SCORING_RULES.md +265 -0
- package/vendor/Server/Skills/flutter-library-test-coverage-check/references/SCRIPT_USAGE.md +286 -0
- package/vendor/Server/Skills/knowledge-import/SKILL.md +383 -0
- package/vendor/Server/Skills/knowledge-import/references/MCP_TOOL_USAGE.md +165 -0
- package/vendor/Server/Skills/knowledge-import/references/SKILL_LOCATOR_GUIDE.md +91 -0
- package/vendor/Server/Skills/knowledge-import/references/SKILL_OPTIMIZATION_GUIDE.md +127 -0
- package/vendor/Server/Skills/ohos-lib-pr-push/SKILL.md +301 -0
- package/vendor/Server/Skills/ohos-lib-pr-push/assets/PR_ISSUE_TEMPLATE.md +105 -0
- package/vendor/Server/Skills/ohos-lib-pr-push/references/GITCODE_API.md +127 -0
- package/vendor/Server/Skills/ohos-lib-pr-push/scripts/gitcode-api.cjs +208 -0
- package/vendor/Server/Skills/rn-code-check/SKILL.md +321 -0
- package/vendor/Server/Skills/rn-code-check/references/API-GUIDE.md +235 -0
- package/vendor/Server/Skills/rn-code-check/references/CHECKLIST.md +189 -0
- package/vendor/Server/Skills/rn-code-check/references/REPORT-TEMPLATE.md +247 -0
- package/vendor/Server/Skills/rn-lib-add-example/SKILL.md +198 -0
- package/vendor/Server/Skills/rn-lib-add-example/references/APP_RENAME_GUIDE.md +40 -0
- package/vendor/Server/Skills/rn-lib-add-example/references/SHELL_ADAPTATION_CHECKLIST.md +78 -0
- package/vendor/Server/Skills/rn-lib-add-example/references/TEMPLATE_REPO_GUIDE.md +70 -0
- package/vendor/Server/Skills/rn-lib-add-example/references/VERIFICATION_GUIDE.md +47 -0
- package/vendor/Server/Skills/rn-lib-add-example/scripts/create-example.cjs +252 -0
- package/vendor/Server/Skills/rn-lib-update-doc/SKILL.md +176 -0
- package/vendor/Server/Skills/rn-lib-update-doc/config.json +5 -0
- package/vendor/Server/Skills/rn-lib-update-doc/references/changelog-template.md +35 -0
- package/vendor/Server/Skills/rn-lib-update-doc/references/format-diff.md +137 -0
- package/vendor/Server/Skills/rn-lib-update-doc/references/link-registry.json +33 -0
- package/vendor/Server/Skills/rn-lib-update-doc/references/model-0.4.2-overview.md +40 -0
- package/vendor/Server/Skills/rn-lib-update-doc/references/model-0.4.2.md +429 -0
- package/vendor/Server/Skills/rn-lib-update-doc/scripts/detect-readme-format.cjs +105 -0
- package/vendor/Server/Skills/rn-lib-update-doc/scripts/find-usage-doc.cjs +90 -0
- package/vendor/Server/Skills/rn-lib-update-doc/scripts/link-verify.cjs +213 -0
- package/vendor/Server/Skills/rn-lib-update-doc/scripts/normalize-changelog.cjs +73 -0
- package/vendor/Server/Skills/rn-lib-update-doc/scripts/normalize-package-meta.cjs +258 -0
- package/vendor/Server/Skills/rn-lib-update-doc/scripts/normalize-readme-links.cjs +341 -0
- package/vendor/Server/Skills/rn-lib-update-doc/scripts/resolve-usage-docs.cjs +67 -0
- package/vendor/Server/Skills/rn-library-consistency-check/SKILL.md +299 -0
- package/vendor/Server/Skills/rn-library-consistency-check/assets/REPORT_TEMPLATE.md +293 -0
- package/vendor/Server/Skills/rn-library-consistency-check/references/ARKTS_COMPONENT_CHECK_GUIDE.md +857 -0
- package/vendor/Server/Skills/rn-library-consistency-check/references/ARKTS_TURBOMODULE_CHECK_GUIDE.md +856 -0
- package/vendor/Server/Skills/rn-library-consistency-check/references/CHECKLIST.md +157 -0
- package/vendor/Server/Skills/rn-library-consistency-check/references/CPP_COMPONENT_CHECK_GUIDE.md +801 -0
- package/vendor/Server/Skills/rn-library-consistency-check/references/CPP_TURBOMODULE_CHECK_GUIDE.md +684 -0
- package/vendor/Server/Skills/rn-library-consistency-check/references/FUNCTION_COMPARISON_GUIDE.md +233 -0
- package/vendor/Server/Skills/rn-library-consistency-check/references/NATIVE_COMPONENT_IDENTIFICATION.md +1373 -0
- package/vendor/Server/Skills/rn-library-consistency-check/references/SCORING_STANDARD.md +220 -0
- package/vendor/Server/Skills/rn-library-consistency-check/scripts/validate-skill.py +245 -0
- package/vendor/Server/Skills/rn-library-documentation-quality-check/SKILL.md +263 -0
- package/vendor/Server/Skills/rn-library-documentation-quality-check/assets/MODEL.md +414 -0
- package/vendor/Server/Skills/rn-library-documentation-quality-check/assets/MODEL_en.md +413 -0
- package/vendor/Server/Skills/rn-library-documentation-quality-check/assets/REPORT_TEMPLATE.md +311 -0
- package/vendor/Server/Skills/rn-library-documentation-quality-check/references/CHECK_CHECKLIST.md +355 -0
- package/vendor/Server/Skills/rn-library-documentation-quality-check/references/CROSS_VALIDATION_GUIDE.md +115 -0
- package/vendor/Server/Skills/rn-library-documentation-quality-check/references/DOC_COLLECTION_GUIDE.md +139 -0
- package/vendor/Server/Skills/rn-library-documentation-quality-check/references/EXAMPLES.md +586 -0
- package/vendor/Server/Skills/rn-library-documentation-quality-check/references/GOTCHAS.md +57 -0
- package/vendor/Server/Skills/rn-library-documentation-quality-check/scripts/validate-skill.py +259 -0
- package/vendor/Server/Skills/rn-library-interface-analyzer/SKILL.md +301 -0
- package/vendor/Server/Skills/rn-library-interface-analyzer/assets/REPORT_TEMPLATE.md +148 -0
- package/vendor/Server/Skills/rn-library-interface-analyzer/references/DOC_ANNOTATION_GUIDE.md +118 -0
- package/vendor/Server/Skills/rn-library-interface-analyzer/references/SCRIPT_USAGE_GUIDE.md +168 -0
- package/vendor/Server/Skills/rn-library-interface-analyzer/references/URL_PARSING_RULES.md +176 -0
- package/vendor/Server/Skills/rn-library-issue-generalizer/SKILL.md +274 -0
- package/vendor/Server/Skills/rn-library-issue-generalizer/assets/case-template.md +45 -0
- package/vendor/Server/Skills/rn-library-issue-generalizer/assets/rule-template.md +25 -0
- package/vendor/Server/Skills/rn-library-issue-generalizer/references/PR_FETCH_GUIDE.md +61 -0
- package/vendor/Server/Skills/rn-library-issue-generalizer/references/RULE_TEMPLATE_GUIDE.md +165 -0
- package/vendor/Server/Skills/rn-library-issue-generalizer/scripts/fetch-pr-info.py +239 -0
- package/vendor/Server/Skills/rn-library-known-issue-check/SKILL.md +263 -0
- package/vendor/Server/Skills/rn-library-known-issue-check/assets/REPORT_TEMPLATE.md +96 -0
- package/vendor/Server/Skills/rn-library-known-issue-check/references/COMPLIANCE_CHECKLIST.md +58 -0
- package/vendor/Server/Skills/rn-library-known-issue-check/references/INSPECTION_GUIDE.md +99 -0
- package/vendor/Server/Skills/rn-library-known-issue-check/references/PRESCREEN_GUIDE.md +64 -0
- package/vendor/Server/Skills/rn-library-known-issue-check/references/SOURCE_PREP_GUIDE.md +75 -0
- package/vendor/Server/Skills/rn-library-known-issue-check/scripts/validate-known-issue-report.py +164 -0
- package/vendor/Server/Skills/rn-library-memory-leak-check/SKILL.md +339 -0
- package/vendor/Server/Skills/rn-library-memory-leak-check/assets/REPORT_TEMPLATE.md +83 -0
- package/vendor/Server/Skills/rn-library-memory-leak-check/references/CHECKLIST.md +859 -0
- package/vendor/Server/Skills/rn-library-memory-leak-check/references/HARMONY_CODE_PATTERNS.md +122 -0
- package/vendor/Server/Skills/rn-library-memory-leak-check/scripts/scan_harmony_code.py +279 -0
- package/vendor/Server/Skills/rn-library-stability-check/SKILL.md +273 -0
- package/vendor/Server/Skills/rn-library-stability-check/assets/REPORT_TEMPLATE.md +129 -0
- package/vendor/Server/Skills/rn-library-stability-check/references/CHECKLIST.md +581 -0
- package/vendor/Server/Skills/rn-library-stability-check/references/SCORING_RULES.md +138 -0
- package/vendor/Server/Skills/rn-library-stability-check/scripts/scan-harmony-code.py +168 -0
- package/vendor/Server/Skills/rn-library-test-coverage-check/SKILL.md +506 -0
- package/vendor/Server/Skills/rn-library-test-coverage-check/references/CHECKLIST.md +280 -0
- package/vendor/Server/Skills/rn-library-test-coverage-check/references/DEMO_LOCATION.md +221 -0
- package/vendor/Server/Skills/rn-library-test-coverage-check/references/REPORT_TEMPLATE.md +209 -0
- package/vendor/Server/Skills/rn-library-test-coverage-check/references/SCRIPT_USAGE.md +325 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/SKILL.md +279 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/assets/TEST_FILE_TEMPLATES.md +404 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/BUILD_TROUBLESHOOTING.md +185 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/BUILD_WORKFLOW.md +265 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/COMMON_CONFIG.md +189 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/CONFIG_GUIDE.md +203 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/COVERAGE_ANALYZER.md +147 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/DESIGN_DOC_GUIDE.md +148 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/GENERATION_FLOW.md +165 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/GENERATION_STRATEGY.md +195 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/HARMONY_SCANNER.md +249 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/JEST_FRAMEWORK.md +235 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/PLATFORM_COMPAT.md +161 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/RN_TEST_PATTERNS.md +413 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/SOURCE_PARSER.md +235 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/TEST_CONVENTIONS.md +245 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/TROUBLESHOOTING.md +282 -0
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/USAGE_GUIDE.md +251 -0
- package/vendor/Server/Skills/rnoh-cptf-api-test/SKILL.md +469 -0
- package/vendor/Server/Skills/rnoh-cptf-api-test/assets/CPTF_TEST_TEMPLATE.md +310 -0
- package/vendor/Server/Skills/rnoh-cptf-api-test/assets/DEMO_PAGE_TEMPLATE.md +303 -0
- package/vendor/Server/Skills/rnoh-cptf-api-test/references/CPTF_TEST_GENERATION_GUIDE.md +421 -0
- package/vendor/Server/Skills/rnoh-cptf-api-test/references/DEMO_GENERATION_GUIDE.md +358 -0
- package/vendor/Server/Skills/rnoh-cptf-api-test/references/QUALITY_CHECKLIST.md +114 -0
- package/vendor/Server/Skills/rnoh-cptf-api-test/references/SPEC_PARSING_GUIDE.md +274 -0
- package/vendor/Server/Skills/rnoh-cptf-api-test/scripts/validate-rnoh-cptf-api-test.sh +185 -0
- package/vendor/Server/Skills/rnoh-cptf-demo-test/SKILL.md +191 -0
- package/vendor/Server/Skills/rnoh-cptf-demo-test/assets/TEST_TEMPLATE.md +216 -0
- package/vendor/Server/Skills/rnoh-cptf-demo-test/references/CPTF_SETUP.md +107 -0
- package/vendor/Server/Skills/rnoh-cptf-demo-test/references/DEMO_ANALYSIS.md +120 -0
- package/vendor/Server/Skills/rnoh-cptf-demo-test/scripts/validate-rnoh-cptf-test.sh +108 -0
- package/vendor/Server/Skills/rnoh-cptf-test-run/SKILL.md +237 -0
- package/vendor/Server/Skills/rnoh-cptf-test-run/references/DEBUG_PLAYBOOK.md +261 -0
- package/vendor/Server/Skills/rnoh-cptf-test-run/scripts/validate-run-env.sh +112 -0
- package/vendor/Server/Skills/rnoh-lib-code-adapt/SKILL.md +498 -0
- package/vendor/Server/Skills/rnoh-lib-code-adapt/references/adapt-checklist.md +270 -0
- package/vendor/Server/Skills/rnoh-lib-code-adapt/references/api-migration-checklist.md +164 -0
- package/vendor/Server/Skills/rnoh-lib-code-adapt/references/common-compile-errors.md +556 -0
- package/vendor/Server/Skills/rnoh-lib-code-adapt/references/deveco-cli-tools.md +459 -0
- package/vendor/Server/Skills/rnoh-lib-code-adapt/references/edge-cases.md +65 -0
- package/vendor/Server/Skills/rnoh-lib-code-adapt/references/har-tgz-build.md +512 -0
- package/vendor/Server/Skills/rnoh-lib-code-adapt/references/version-compat-matrix.md +132 -0
- package/vendor/Server/Skills/rnoh-lib-code-adapt/scripts/auto-integrate.sh +424 -0
- package/vendor/Server/Skills/rnoh-lib-demo-coverage/SKILL.md +137 -0
- package/vendor/Server/Skills/rnoh-lib-demo-create/SKILL.md +306 -0
- package/vendor/Server/Skills/rnoh-lib-demo-create/assets/DEMO_PAGE_TEMPLATE.md +485 -0
- package/vendor/Server/Skills/rnoh-lib-demo-create/assets/INDEX_TEMPLATE.md +172 -0
- package/vendor/Server/Skills/rnoh-lib-demo-create/references/DEMO_CODE_RULES.md +422 -0
- package/vendor/Server/Skills/rnoh-lib-demo-create/references/QUALITY_CHECKLIST.md +95 -0
- package/vendor/Server/Skills/rnoh-lib-demo-create/references/SOURCE_EXPLORATION.md +169 -0
- package/vendor/Server/Skills/rnoh-lib-demo-doc/SKILL.md +554 -0
- package/vendor/Server/Skills/rnoh-lib-demo-doc/assets/DEMO_DOC_TEMPLATE.md +106 -0
- package/vendor/Server/Skills/rnoh-lib-demo-doc/references/COVERAGE_INCREMENTAL.md +216 -0
- package/vendor/Server/Skills/rnoh-lib-demo-doc/references/DEMO_DESIGN_RULES.md +413 -0
- package/vendor/Server/Skills/rnoh-lib-demo-doc/references/OUTPUT_FORMAT.md +269 -0
- package/vendor/Server/Skills/rnoh-lib-demo-doc/references/QUALITY_CHECKLIST.md +98 -0
- package/vendor/Server/Skills/rnoh-lib-func-test/SKILL.md +337 -0
- package/vendor/Server/Skills/rnoh-lib-rnt-search/SKILL.md +722 -0
- package/vendor/Server/Skills/rnoh-lib-rnt-search/assets/PORT_REPORT_TEMPLATE.md +219 -0
- package/vendor/Server/Skills/rnoh-lib-rnt-search/references/DEMO_PORTING_GUIDE.md +345 -0
- package/vendor/Server/Skills/rnoh-lib-rnt-search/references/PORT_VERIFICATION.md +269 -0
- package/vendor/Server/Skills/rnoh-lib-rnt-search/references/RNT_PROJECT_STRUCTURE.md +173 -0
- package/vendor/Server/Skills/rnoh-lib-rnt-search/scripts/analyze-demo-deps.cjs +267 -0
- package/vendor/Server/Skills/rnoh-lib-rnt-search/scripts/detect-rnoh-version.cjs +174 -0
- package/vendor/Server/Skills/rnoh-lib-rnt-search/scripts/find-rnt-demo.sh +111 -0
- package/vendor/Server/Skills/rnoh-lib-rnt-search/scripts/port-demo.sh +186 -0
- package/vendor/Server/Skills/rnoh-lib-rnt-search/scripts/read-lib-meta.cjs +150 -0
- package/vendor/Server/Skills/rnoh-lib-test-align/SKILL.md +296 -0
- package/vendor/Server/Skills/rnoh-lib-test-align/references/jest-troubleshooting.md +371 -0
- package/vendor/Server/Skills/rnoh-lib-test-align/references/port-test-demo-guide.md +212 -0
- package/vendor/Server/Skills/rnoh-lib-test-align/references/runtime-troubleshooting.md +345 -0
- package/vendor/Server/Skills/rnoh-lib-test-align/references/unit-test-template.md +223 -0
- package/vendor/Server/Skills/rnoh-lib-test-align/scripts/port-test-demo.sh +1053 -0
- package/vendor/Server/Skills/rnoh-lib-version-diff/SKILL.md +255 -0
- package/vendor/Server/Skills/rnoh-lib-version-diff/references/OHOS_ADAPTATION.md +77 -0
- package/vendor/Server/Skills/rnoh-lib-version-diff/references/OHOS_API_LOOKUP.md +224 -0
- package/vendor/Server/Skills/rnoh-lib-version-diff/references/script-reference.md +174 -0
- package/vendor/Server/Skills/rnoh-lib-version-diff/scripts/detect-upstream-version.js +967 -0
- package/vendor/Server/Skills/rnoh-lib-version-diff/scripts/generate-diff.js +1798 -0
- package/vendor/Server/Skills/rnoh-lib-version-diff/scripts/package.json +5 -0
- package/vendor/Server/Skills/rnoh-lib-version-diff/templates/report-template.md +137 -0
- package/vendor/Server/Skills/rnoh-lib-xts-coverage/SKILL.md +145 -0
- package/vendor/Server/Skills/skill-generator/SKILL.md +365 -0
- package/vendor/Server/Skills/skill-generator/assets/SKILL_TEMPLATE.md +183 -0
- package/vendor/Server/Skills/skill-generator/references/COMPLIANCE_CHECKLIST.md +82 -0
- package/vendor/Server/Skills/skill-generator/references/KB_QUERY_GUIDE.md +110 -0
- package/vendor/Server/Skills/skill-generator/references/MCP_TOOL_DISCOVERY.md +122 -0
- package/vendor/Server/Skills/skill-generator/references/SKILL_SPEC.md +121 -0
- package/vendor/Server/Skills/skill-generator/scripts/validate-skill.cjs +259 -0
- package/vendor/Server/Skills/task-analysis/SKILL.md +234 -0
- package/vendor/Server/Skills/task-analysis/assets/OUTPUT_EXAMPLES.md +160 -0
- package/vendor/Server/Skills/task-analysis/references/ACCEPTANCE_CRITERIA_GUIDE.md +190 -0
- package/vendor/Server/Skills/task-analysis/references/ANALYSIS_SCHEMA.md +224 -0
- package/vendor/Server/Skills/task-analysis/references/INTEGRATION_CONTEXT.md +162 -0
- package/vendor/Server/Skills/task-analysis/references/LESSONS_LEARNED.md +55 -0
- package/vendor/Server/Skills/task-analysis/references/REPLAN_CONTEXT_GUIDE.md +126 -0
- package/vendor/Server/Skills/task-analysis/scripts/validate-analysis-output.sh +256 -0
- package/vendor/Server/Skills/task-decomposition/SKILL.md +529 -0
- package/vendor/Server/Skills/task-decomposition/assets/OUTPUT_EXAMPLES.md +451 -0
- package/vendor/Server/Skills/task-decomposition/references/ACCEPTANCE_CRITERIA_GUIDE.md +179 -0
- package/vendor/Server/Skills/task-decomposition/references/DEPENDENCY_GRAPH_GUIDE.md +152 -0
- package/vendor/Server/Skills/task-decomposition/references/INTEGRATION_CONTEXT.md +175 -0
- package/vendor/Server/Skills/task-decomposition/references/REPLAN_CONTEXT_GUIDE.md +195 -0
- package/vendor/Server/Skills/task-decomposition/references/TASK_DECOMPOSITION_TEMPLATES.md +226 -0
- package/vendor/Server/Skills/task-decomposition/scripts/list-available-skills.cjs +263 -0
- package/vendor/Server/Skills/task-decomposition/scripts/skill-blacklist.json +29 -0
- package/vendor/Server/Skills/task-decomposition/scripts/validate-decomposition-output.cjs +376 -0
- package/vendor/Server/Skills/task-decomposition/scripts/validate-param-consistency.cjs +259 -0
- package/vendor/Server/Skills/task-decomposition/scripts/validate-specified-skills.cjs +216 -0
- package/vendor/Server/Skills/task-decomposition/scripts/validate-step-graph.cjs +425 -0
- package/vendor/Server/Skills/tpc-cpp-check/SKILL.md +427 -0
- package/vendor/Server/Skills/tpc-cpp-check/references/CHECKLIST.md +214 -0
- package/vendor/Server/Skills/tpc-cpp-check/references/HPKBUILD_GUIDE.md +235 -0
- package/vendor/Server/Skills/tpc-cpp-check/references/REPORT_TEMPLATE.md +250 -0
- package/vendor/Server/TestCheck/TestCheck.js +775 -0
- package/vendor/Server/TestCheck/index.js +11 -0
- package/vendor/Server/library/McpToolGuide.js +280 -0
- package/vendor/Server/library/StatsService.js +127 -0
- package/vendor/Server/library/cstTime.js +16 -0
- package/vendor/Server/package.json +17 -0
- package/vendor/VERSION +3 -0
- package/workflows/pr-check.mjs +106 -0
|
@@ -0,0 +1,459 @@
|
|
|
1
|
+
# devecocli (DevEco CLI) 工具使用指南
|
|
2
|
+
|
|
3
|
+
`devecocli` 是 HarmonyOS 应用开发的统一命令行入口,封装了 ohpm、hvigor、hdc、hilog、emulator 等工具链。本 skill 在编译验证和代码检查中优先使用 devecocli。
|
|
4
|
+
|
|
5
|
+
> 参考文档:https://gitcode.com/openharmony-sig/deveco-cli#常用命令
|
|
6
|
+
|
|
7
|
+
## 安装与环境配置
|
|
8
|
+
|
|
9
|
+
### 安装
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npm install -g @deveco/deveco-cli@latest
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
更新到最新版本:
|
|
16
|
+
```bash
|
|
17
|
+
devecocli update
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
### 前置要求
|
|
21
|
+
|
|
22
|
+
- Node.js >= 18(推荐 22+)
|
|
23
|
+
- DevEco Studio >= 6.0.0 或 Command Line Tools >= 26.0.0
|
|
24
|
+
- macOS:DevEco Studio 安装在 `~/Applications` 或 `/Applications` 目录下
|
|
25
|
+
|
|
26
|
+
### 环境变量
|
|
27
|
+
|
|
28
|
+
非默认安装路径或多版本并存时需设置:
|
|
29
|
+
|
|
30
|
+
| 环境变量 | 用途 | 优先级 |
|
|
31
|
+
|---------|------|--------|
|
|
32
|
+
| `DEVECO_CLI_STUDIO_PATH` | DevEco Studio 安装根 | 最高 |
|
|
33
|
+
| `DEVECO_CLI_CLT_PATH` | Command Line Tools 安装根 | 次之 |
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
# macOS 示例
|
|
37
|
+
export DEVECO_CLI_STUDIO_PATH="/Applications/DevEco-Studio.app"
|
|
38
|
+
|
|
39
|
+
# Linux 或自定义 CLT 路径
|
|
40
|
+
export DEVECO_CLI_CLT_PATH=/opt/command-line-tools
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
优先级链:`DEVECO_CLI_STUDIO_PATH > DEVECO_CLI_CLT_PATH > Auto_Detect`
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## 编译验证相关命令
|
|
48
|
+
|
|
49
|
+
### `devecocli build` — 构建工程
|
|
50
|
+
|
|
51
|
+
替代 `hvigorw assembleHap`,自动解析模块依赖。
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
# 基本构建
|
|
55
|
+
devecocli build --product default --build-mode debug
|
|
56
|
+
|
|
57
|
+
# 指定模块
|
|
58
|
+
devecocli build --modules entry library
|
|
59
|
+
|
|
60
|
+
# release 模式
|
|
61
|
+
devecocli build --build-mode release
|
|
62
|
+
|
|
63
|
+
# 指定模块的 target
|
|
64
|
+
devecocli build --modules library@phone
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
| 参数 | 说明 |
|
|
68
|
+
|------|------|
|
|
69
|
+
| `--product` | 产品名称,默认 `default` |
|
|
70
|
+
| `--modules` | 模块名称,格式 `module` 或 `module@target` |
|
|
71
|
+
| `--build-mode` | 构建模式,默认 `debug` |
|
|
72
|
+
|
|
73
|
+
**产物路径**:
|
|
74
|
+
- `--product <name>`(无 modules)→ `.app` 包
|
|
75
|
+
- `--product <name> --modules <m1>`→ `.hap` / `.hsp` / `.har`
|
|
76
|
+
- 具体路径:`entry/build/default/outputs/default/entry-default-signed.hap`
|
|
77
|
+
|
|
78
|
+
### `devecocli build clean` — 清理构建产物
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
devecocli build clean
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## 代码检查相关命令
|
|
87
|
+
|
|
88
|
+
### `devecocli check lint` — 代码规范检查
|
|
89
|
+
|
|
90
|
+
检查代码规范并输出实践建议与报告。**这是本 skill 最常用的 devecocli 命令**,用于修改 ArkTS/C++ 代码后快速验证。
|
|
91
|
+
|
|
92
|
+
```bash
|
|
93
|
+
# 检查单个文件
|
|
94
|
+
devecocli check lint harmony/src/main/ets/XxxModule.ets
|
|
95
|
+
|
|
96
|
+
# 检查目录
|
|
97
|
+
devecocli check lint harmony/src/main/ets/
|
|
98
|
+
|
|
99
|
+
# 检查项目根目录(默认)
|
|
100
|
+
devecocli check lint
|
|
101
|
+
|
|
102
|
+
# 自动修复可修复的问题
|
|
103
|
+
devecocli check lint harmony/src/main/ets/ --fix
|
|
104
|
+
|
|
105
|
+
# 仅检查 Git 未提交文件(增量检查)
|
|
106
|
+
devecocli check lint --incremental
|
|
107
|
+
|
|
108
|
+
# 输出 JSON 格式
|
|
109
|
+
devecocli check lint --format json
|
|
110
|
+
|
|
111
|
+
# 输出报告到文件
|
|
112
|
+
devecocli check lint --output-path ./lint-report.md
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
| 参数 | 说明 |
|
|
116
|
+
|------|------|
|
|
117
|
+
| `[path]` | 待检查的文件或目录,默认项目根 |
|
|
118
|
+
| `--config-path <path>` | Code Linter 配置文件(.json/.json5) |
|
|
119
|
+
| `--fix` | 自动修复可修复的问题 |
|
|
120
|
+
| `--incremental` | 仅检查 Git 未提交文件 |
|
|
121
|
+
| `--product <name>` | build-profile.json5 中的 product,默认 `default` |
|
|
122
|
+
| `--format <default\|json>` | 报告格式;json 需 DevEco Studio >= 6.1.0 |
|
|
123
|
+
| `--output-path <path>` | 报告输出路径 |
|
|
124
|
+
| `--limit <number>` | 终端显示的问题数量限制 |
|
|
125
|
+
|
|
126
|
+
> **适用场景**:每次修改 `.ets`/`.cpp` 文件后,用 `devecocli check lint <file>` 快速验证语法是否正确,无需等待全量编译。这在编译错误修复迭代中可大幅节省时间。
|
|
127
|
+
|
|
128
|
+
### `devecocli check compat` — SDK 兼容性扫描
|
|
129
|
+
|
|
130
|
+
基于 `apikanalyzer-apiscan` 插件,扫描源代码在两个 SDK 版本之间的 API 变更。
|
|
131
|
+
|
|
132
|
+
```bash
|
|
133
|
+
# 查看可用 SDK 版本
|
|
134
|
+
devecocli check compat versions
|
|
135
|
+
|
|
136
|
+
# 工程级扫描
|
|
137
|
+
devecocli check compat --source-version "5.0.1(17)" --target-version "6.0.0(21)"
|
|
138
|
+
|
|
139
|
+
# 输出 JSON
|
|
140
|
+
devecocli check compat --format json --source-version "5.0.1(17)" --target-version "6.0.0(21)"
|
|
141
|
+
|
|
142
|
+
# 输出报告到目录
|
|
143
|
+
devecocli check compat --output-path ./report --source-version "5.0.1(17)" --target-version "6.0.0(21)"
|
|
144
|
+
|
|
145
|
+
# 文件级扫描(仅 .ets/.c/.cpp)
|
|
146
|
+
devecocli check compat ./harmony/src/main/ets/XxxModule.ets \
|
|
147
|
+
--source-version "5.0.1(17)" --target-version "6.0.0(21)"
|
|
148
|
+
|
|
149
|
+
# 模块级扫描
|
|
150
|
+
devecocli check compat --modules entry har1 \
|
|
151
|
+
--source-version "5.0.1(17)" --target-version "6.0.0(21)"
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
| 参数 | 说明 |
|
|
155
|
+
|------|------|
|
|
156
|
+
| `--source-version` | 必填,当前工程 SDK 版本 |
|
|
157
|
+
| `--target-version` | 必填,目标 SDK 版本 |
|
|
158
|
+
| `--modules` | 指定模块(与文件参数互斥) |
|
|
159
|
+
| `--format` | `default`/`csv`/`json`,默认 `default` |
|
|
160
|
+
| `--output-path` | 报告输出路径(目录或文件) |
|
|
161
|
+
| `--limit` | 控制台最大记录数,默认 100 |
|
|
162
|
+
|
|
163
|
+
> **zsh 环境注意**:版本号需用引号包裹(包含括号),如 `"5.0.1(17)"`。
|
|
164
|
+
|
|
165
|
+
> **适用场景**:升级 RNOH 版本时(如 0.82→0.84 可能涉及 SDK 版本变更),用此命令扫描代码中是否有被废弃或变更的 API 调用。
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
|
|
169
|
+
## 运行与调试相关命令
|
|
170
|
+
|
|
171
|
+
### `devecocli run` — 构建并运行
|
|
172
|
+
|
|
173
|
+
构建应用后安装到设备/模拟器并启动。
|
|
174
|
+
|
|
175
|
+
```bash
|
|
176
|
+
# 基本运行
|
|
177
|
+
devecocli run
|
|
178
|
+
|
|
179
|
+
# 指定设备和模块
|
|
180
|
+
devecocli run --module entry --device 127.0.0.1:5555
|
|
181
|
+
|
|
182
|
+
# release 模式
|
|
183
|
+
devecocli run --build-mode release
|
|
184
|
+
|
|
185
|
+
# 安装前先卸载
|
|
186
|
+
devecocli run --uninstall
|
|
187
|
+
|
|
188
|
+
# 跳过构建直接安装(需已有构建产物)
|
|
189
|
+
devecocli run --skip-build
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
| 参数 | 说明 |
|
|
193
|
+
|------|------|
|
|
194
|
+
| `--module` | 模块名称,格式 `module` 或 `module@target` |
|
|
195
|
+
| `--device` | 设备名称/序列号,多设备时必填 |
|
|
196
|
+
| `--product` | 产品名称,默认 `default` |
|
|
197
|
+
| `--build-mode` | 构建模式,默认 `debug` |
|
|
198
|
+
| `--ability` | 待启动的 Ability |
|
|
199
|
+
| `--uninstall` | 安装前先卸载已有应用 |
|
|
200
|
+
| `--skip-build` | 跳过构建直接安装 |
|
|
201
|
+
|
|
202
|
+
### `devecocli log` — 查看日志
|
|
203
|
+
|
|
204
|
+
查看 hilog 或崩溃日志。
|
|
205
|
+
|
|
206
|
+
```bash
|
|
207
|
+
# 查看错误级别日志
|
|
208
|
+
devecocli log --level E
|
|
209
|
+
|
|
210
|
+
# 按包名过滤
|
|
211
|
+
devecocli log --bundle-name com.example.app
|
|
212
|
+
|
|
213
|
+
# 查看崩溃日志
|
|
214
|
+
devecocli log --crash --bundle-name com.example.app
|
|
215
|
+
|
|
216
|
+
# 关键词过滤
|
|
217
|
+
devecocli log --device 127.0.0.1:5555 --level W --keyword Init
|
|
218
|
+
|
|
219
|
+
# 查看最近 100 行
|
|
220
|
+
devecocli log --tail 100 --from 5m --to 2m
|
|
221
|
+
|
|
222
|
+
# 实时日志
|
|
223
|
+
devecocli log --follow --bundle-name com.example.app
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
| 参数 | 说明 |
|
|
227
|
+
|------|------|
|
|
228
|
+
| `--device` | 设备名称/序列号 |
|
|
229
|
+
| `--crash` | 查看崩溃日志 |
|
|
230
|
+
| `--level` | 日志级别:D/I/W/E/F |
|
|
231
|
+
| `--bundle-name` | 按包名过滤 |
|
|
232
|
+
| `--keyword` | 关键词过滤(区分大小写) |
|
|
233
|
+
| `--tail <num>` | 显示最新 N 行 |
|
|
234
|
+
| `--from` / `--to` | 时间范围(如 `5m`、`30s`) |
|
|
235
|
+
| `--follow` | 实时输出(不可与 `--to` 同时使用) |
|
|
236
|
+
|
|
237
|
+
---
|
|
238
|
+
|
|
239
|
+
## 设备与模拟器管理
|
|
240
|
+
|
|
241
|
+
### `devecocli device list` — 查看设备
|
|
242
|
+
|
|
243
|
+
```bash
|
|
244
|
+
devecocli device list
|
|
245
|
+
devecocli device list --format json
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
### `devecocli device view` — 设备详情
|
|
249
|
+
|
|
250
|
+
```bash
|
|
251
|
+
devecocli device view
|
|
252
|
+
devecocli device view --target 127.0.0.1:5555
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
### `devecocli emulator list` — 查看模拟器
|
|
256
|
+
|
|
257
|
+
```bash
|
|
258
|
+
devecocli emulator list
|
|
259
|
+
devecocli emulator list --format json
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
### `devecocli emulator start` — 启动模拟器
|
|
263
|
+
|
|
264
|
+
```bash
|
|
265
|
+
devecocli emulator start Phone
|
|
266
|
+
devecocli emulator start Phone1 Phone2
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
> 首次使用需签署许可协议:`devecocli emulator license accept`(非交互式)
|
|
270
|
+
|
|
271
|
+
### `devecocli emulator create` — 创建模拟器
|
|
272
|
+
|
|
273
|
+
```bash
|
|
274
|
+
devecocli emulator create MyPhone --device-type phone --os-version "HarmonyOS 6.0.1(21)"
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
---
|
|
278
|
+
|
|
279
|
+
## 签名管理
|
|
280
|
+
|
|
281
|
+
### `devecocli signature generate` — 自动生成签名
|
|
282
|
+
|
|
283
|
+
自动生成调试签名材料(p12、csr、p7b、cer),并写入 `build-profile.json5`。
|
|
284
|
+
|
|
285
|
+
```bash
|
|
286
|
+
# 自动生成签名并写入工程配置
|
|
287
|
+
devecocli signature generate
|
|
288
|
+
|
|
289
|
+
# 指定 product
|
|
290
|
+
devecocli signature generate --product default
|
|
291
|
+
|
|
292
|
+
# 指定 team-id
|
|
293
|
+
devecocli signature generate --team-id 1222
|
|
294
|
+
|
|
295
|
+
# 强制覆盖已有证书
|
|
296
|
+
devecocli signature generate --force
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
> **适用场景**:新建鸿蒙化工程或签名过期时,用此命令一键生成签名配置,避免手动操作。
|
|
300
|
+
|
|
301
|
+
---
|
|
302
|
+
|
|
303
|
+
## UI 调试相关命令
|
|
304
|
+
|
|
305
|
+
### `devecocli ui layout` — 导出 UI 节点树
|
|
306
|
+
|
|
307
|
+
```bash
|
|
308
|
+
devecocli ui layout
|
|
309
|
+
devecocli ui layout --device Phone --format json
|
|
310
|
+
devecocli ui layout --mode full --depth 2
|
|
311
|
+
devecocli ui layout --id submit_button
|
|
312
|
+
```
|
|
313
|
+
|
|
314
|
+
### `devecocli ui screenshot` — UI 截图
|
|
315
|
+
|
|
316
|
+
```bash
|
|
317
|
+
mkdir -p screenshots
|
|
318
|
+
devecocli ui screenshot --device Phone --path ./screenshots
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
### `devecocli ui click` — 点击
|
|
322
|
+
|
|
323
|
+
```bash
|
|
324
|
+
devecocli ui click 100 200
|
|
325
|
+
devecocli ui click --id submit_button
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
### `devecocli ui text` — 输入文本
|
|
329
|
+
|
|
330
|
+
```bash
|
|
331
|
+
devecocli ui text "Hello World"
|
|
332
|
+
devecocli ui text "Hello World" --id search_box
|
|
333
|
+
```
|
|
334
|
+
|
|
335
|
+
---
|
|
336
|
+
|
|
337
|
+
## 文档检索
|
|
338
|
+
|
|
339
|
+
### `devecocli docs search` — 搜索文档
|
|
340
|
+
|
|
341
|
+
```bash
|
|
342
|
+
devecocli docs search List
|
|
343
|
+
devecocli docs search '@State' '@Prop' --catalog best-practices --limit 10
|
|
344
|
+
devecocli docs search Row Column --format json
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
| 参数 | 说明 |
|
|
348
|
+
|------|------|
|
|
349
|
+
| `keywords...` | 搜索关键词,空格分隔 |
|
|
350
|
+
| `--catalog` | 文档类别:harmonyos-releases/guides/references/best-practices/faqs/roadmap/all |
|
|
351
|
+
| `--format` | `default`/`json` |
|
|
352
|
+
| `--limit` | 返回条数,默认 10 |
|
|
353
|
+
|
|
354
|
+
### `devecocli docs read` — 读取文档
|
|
355
|
+
|
|
356
|
+
```bash
|
|
357
|
+
devecocli docs read <documentId>
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
> **适用场景**:适配过程中需要查阅鸿蒙 API 文档时,可用 `devecocli docs search` 替代网页搜索。
|
|
361
|
+
|
|
362
|
+
---
|
|
363
|
+
|
|
364
|
+
## MCP 代码分析服务
|
|
365
|
+
|
|
366
|
+
`devecocli` 提供 MCP(Model Context Protocol)服务,可通过 MCP 协议调用代码分析工具。
|
|
367
|
+
|
|
368
|
+
### 配置 MCP 服务
|
|
369
|
+
|
|
370
|
+
```bash
|
|
371
|
+
# 自动配置到当前 Agent(如已安装 devecocli skill)
|
|
372
|
+
devecocli init --mcp --project ./MyApp
|
|
373
|
+
|
|
374
|
+
# 或手动配置 MCP
|
|
375
|
+
devecocli serve mcp
|
|
376
|
+
```
|
|
377
|
+
|
|
378
|
+
MCP 配置示例:
|
|
379
|
+
```json
|
|
380
|
+
{
|
|
381
|
+
"mcp": {
|
|
382
|
+
"deveco-mcp": {
|
|
383
|
+
"type": "local",
|
|
384
|
+
"command": ["devecocli", "serve", "mcp"],
|
|
385
|
+
"environment": {
|
|
386
|
+
"PROJECT_PATH": "/path/to/project",
|
|
387
|
+
"NODE_MAX_OLD_SPACE_SIZE": "8192"
|
|
388
|
+
},
|
|
389
|
+
"enable": true
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
```
|
|
394
|
+
|
|
395
|
+
### MCP 工具一览
|
|
396
|
+
|
|
397
|
+
| 工具 | 用途 | 支持语言 |
|
|
398
|
+
|------|------|---------|
|
|
399
|
+
| `check` | 静态语法分析,返回结构化诊断信息 | ArkTS、C/C++ |
|
|
400
|
+
| `hover` | 获取位置的悬浮信息(类型、文档) | ArkTS、C/C++ |
|
|
401
|
+
| `definition` | 查找符号定义位置 | ArkTS、C/C++ |
|
|
402
|
+
| `declaration` | 查找符号声明位置 | ArkTS、C/C++ |
|
|
403
|
+
| `references` | 查找符号全工程引用 | ArkTS、C/C++ |
|
|
404
|
+
| `implementation` | 查找符号实现(如接口实现) | ArkTS、C/C++ |
|
|
405
|
+
| `workspaceSymbol` | 按名称全工程搜索符号 | ArkTS、C/C++ |
|
|
406
|
+
| `documentSymbol` | 获取单文件符号树 | ArkTS、C/C++ |
|
|
407
|
+
| `callHierarchy` | 查询函数调用关系(incoming/outgoing) | ArkTS 双向、C/C++ 仅 incoming |
|
|
408
|
+
| `restart` | 原地重启 MCP server | — |
|
|
409
|
+
|
|
410
|
+
### MCP 工具使用要点
|
|
411
|
+
|
|
412
|
+
**`check` 工具**(最常用):
|
|
413
|
+
- 入参:`files`(文件路径数组,相对工程根目录)
|
|
414
|
+
- 支持 `.ets` 和 C/C++ 扩展名(`.c`/`.cpp`/`.h`/`.hpp` 等)
|
|
415
|
+
- 可混合传入 ArkTS 和 C/C++ 文件
|
|
416
|
+
- 返回结构化诊断信息
|
|
417
|
+
|
|
418
|
+
**语言特性工具**(`hover`/`definition`/`references` 等):
|
|
419
|
+
- 入参:`file`(文件路径)、`line`(0-based 行号)、`character`(0-based 列号)
|
|
420
|
+
- 需项目进入 `READY` 状态(ohpm install + hvigor sync + LSP 初始化完成)后才可用
|
|
421
|
+
- 未就绪时返回 `please retry in N seconds`
|
|
422
|
+
|
|
423
|
+
**`callHierarchy` 工具**:
|
|
424
|
+
- 入参:`file`、`line`、`character`、`direction`(`incoming`/`outgoing`)
|
|
425
|
+
- `incoming` = 谁调用了该函数
|
|
426
|
+
- `outgoing` = 该函数调用了谁
|
|
427
|
+
- ArkTS 支持双向,C/C++ 仅 `incoming`
|
|
428
|
+
|
|
429
|
+
**`restart` 工具**:
|
|
430
|
+
- 用于 MCP server 从 `ERROR` 态恢复
|
|
431
|
+
- 调用后返回"约 10 秒后重试",后台异步重置
|
|
432
|
+
- **禁止**循环调用 restart;若重启后再次失败,说明是持久性配置问题
|
|
433
|
+
|
|
434
|
+
### 支持的文件扩展名
|
|
435
|
+
|
|
436
|
+
| 语言 | 扩展名 |
|
|
437
|
+
|------|--------|
|
|
438
|
+
| ArkTS | `.ets` |
|
|
439
|
+
| C/C++ | `.c` `.cc` `.cpp` `.cxx` `.c++` `.h` `.hh` `.hpp` `.hxx` `.h++` `.ipp` `.ixx` `.inl` `.inc` `.tpp` |
|
|
440
|
+
|
|
441
|
+
---
|
|
442
|
+
|
|
443
|
+
## devecocli 不可用时的回退方案
|
|
444
|
+
|
|
445
|
+
如果 `devecocli` 未安装或不可用,回退到直接使用底层工具:
|
|
446
|
+
|
|
447
|
+
| devecocli 命令 | 回退命令 | 工具路径(macOS) |
|
|
448
|
+
|---------------|---------|-----------------|
|
|
449
|
+
| `devecocli build` | `hvigorw assembleHap --no-daemon --mode module -p product=default` | `/Applications/DevEco-Studio.app/Contents/tools/hvigor/bin/hvigorw` |
|
|
450
|
+
| `devecocli check lint` | 无直接替代(需 DevEco Studio GUI 或手动检查) | — |
|
|
451
|
+
| `devecocli run` | `hdc install <hap>` + `hdc shell aa start ...` | `/Applications/DevEco-Studio.app/Contents/tools/hdc/bin/hdc` |
|
|
452
|
+
| `devecocli log` | `hdc shell hilog` | 同上 |
|
|
453
|
+
| `devecocli signature generate` | 手动通过 DevEco Studio GUI 生成 | — |
|
|
454
|
+
| `ohpm install` | 直接 `ohpm install` | `/Applications/DevEco-Studio.app/Contents/tools/ohpm/bin/ohpm` |
|
|
455
|
+
|
|
456
|
+
**检查 devecocli 是否可用**:
|
|
457
|
+
```bash
|
|
458
|
+
which devecocli && devecocli --version
|
|
459
|
+
```
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# 常见边界情况
|
|
2
|
+
|
|
3
|
+
## 1. 跨大版本升级(如 0.72 → 0.84)
|
|
4
|
+
|
|
5
|
+
跨大版本升级涉及多个版本不兼容变更累积,风险较高:
|
|
6
|
+
- 先查阅 [上游社区不兼容变更](https://gitcode.com/CPF-RN/ohos_react_native/blob/main/docs/zh-cn/05-运维/上游社区不兼容变更.md)
|
|
7
|
+
- 分阶段升级(0.72→0.77→0.82→0.84),每阶段单独验证
|
|
8
|
+
- **禁止**直接跳过中间版本
|
|
9
|
+
|
|
10
|
+
## 2. Codegen 产物与手写代码冲突
|
|
11
|
+
|
|
12
|
+
某些鸿蒙化工程可能手写了部分 codegen 产物。重新 codegen 后会覆盖手写代码:
|
|
13
|
+
- codegen 前备份 `harmony/` 目录
|
|
14
|
+
- codegen 后对比差异,将手写的自定义逻辑合并回去
|
|
15
|
+
|
|
16
|
+
## 3. 鸿蒙化工程尚未适配目标 RNOH 版本
|
|
17
|
+
|
|
18
|
+
如果鸿蒙化仓库没有 `br_rnoh0.84` 分支:
|
|
19
|
+
- 使用已有最高版本分支作为起点
|
|
20
|
+
- 先完成 RN/RNOH 版本依赖升级(Step 2)
|
|
21
|
+
- 编译错误会暴露需要适配的接口变更
|
|
22
|
+
- 根据编译错误逆向推导适配方案
|
|
23
|
+
|
|
24
|
+
## 4. peer dependency 冲突
|
|
25
|
+
|
|
26
|
+
RN 0.84 要求 React 19.2.3,如果三方库依赖 React 18.x,会有 peer 冲突:
|
|
27
|
+
- 优先尝试 `--legacy-peer-deps`
|
|
28
|
+
- 如果三方库实际兼容 React 19,在 package.json 中覆盖 peerDependencies
|
|
29
|
+
- 如果确实不兼容,需要先升级三方库的 React 依赖
|
|
30
|
+
|
|
31
|
+
## 5. compileSdkVersion 与本地 SDK 不匹配
|
|
32
|
+
|
|
33
|
+
`build-profile.json5` 中指定的 `compileSdkVersion`(如 `5.0.1(13)`)如果本地未安装对应 SDK,hvigor 会报 `SDK component missing` 错误。
|
|
34
|
+
|
|
35
|
+
**解决方案**(按优先级):
|
|
36
|
+
1. **移除 `compileSdkVersion` 字段**:让 hvigor 自动使用 DevEco Studio 内置 SDK(推荐)
|
|
37
|
+
2. **改为本地已安装的 SDK 版本**:通过 DevEco Studio > SDK Manager 查看
|
|
38
|
+
3. **下载对应 SDK**:通过 DevEco Studio > SDK Manager 安装
|
|
39
|
+
|
|
40
|
+
**注意**:`build-profile.json5` 和 `build-profile.template.json5` 都需要同步修改。
|
|
41
|
+
|
|
42
|
+
## 6. RNOH 框架内部编译警告
|
|
43
|
+
|
|
44
|
+
编译时 RNOH 框架自身代码会产生大量警告(如 `vp2px has been deprecated`、`API 'on' is supported since SDK version 15`),这些是**框架内部兼容性警告,不影响编译结果**,无需修复。只需关注自己库的代码是否有错误。
|
|
45
|
+
|
|
46
|
+
## 7. Codegen 与 Autolinking 的关系
|
|
47
|
+
|
|
48
|
+
| 维度 | Codegen | Autolinking |
|
|
49
|
+
|------|---------|-------------|
|
|
50
|
+
| **作用** | 从 JS spec 生成 C++/ArkTS 类型代码 | 将已生成的 Package 注册到工程 |
|
|
51
|
+
| **输出** | Props.h、ShadowNodes.h、JSIBinder.h 等 | 修改 RNPackagesFactory.ets、PackageProvider.cpp |
|
|
52
|
+
| **可替代** | ❌ 不可省略 | ✅ 可用 `auto-integrate.sh` 脚本替代手动注册 |
|
|
53
|
+
|
|
54
|
+
RNOH **没有** iOS/Android 那样的运行时自动发现机制。所谓 "autolinking" 仅指 `auto-integrate.sh` 脚本可以自动修改注册文件,但 codegen 仍需单独运行。
|
|
55
|
+
|
|
56
|
+
## 8. 源码 `file:` 依赖的 ArkTS 模块注册
|
|
57
|
+
|
|
58
|
+
鸿蒙化三方库通过 `file:` **源码目录**依赖引入 example 工程时,ohpm 创建**符号链接**指向源码目录,hvigor 无法识别,导致 `Path not found` 或 `Failed to resolve OhmUrl`。
|
|
59
|
+
|
|
60
|
+
> ✅ **推荐方案**:使用 **TGZ 包依赖**(`file:../xxx.tgz`)替代源码目录依赖(`file:../rntpc_xxx`)。tgz 安装后是实体文件而非符号链接,自动避免以下所有问题。打包流程见 SKILL.md Step 4b-4d。
|
|
61
|
+
|
|
62
|
+
**如果必须使用源码依赖**(如开发调试阶段),三步配合解决:
|
|
63
|
+
1. **`build-profile.json5` 注册库为独立模块**:`srcPath` 用相对路径直接指向源码目录(如 `../../harmony/xxx`),不用符号链接
|
|
64
|
+
2. **`RNPackagesFactory.ets` 用包根路径导入**:`import { XxxPackage } from '@react-native-ohos/xxx'`(❌ 深层路径 `.../src/main/ets/XxxPackage` 运行时找不到 record)
|
|
65
|
+
3. **保持库的 `index.ets` + `ts.ets` 原始结构**:`ts.ets` 不能改为 `.ts`(TS 文件不能导入 ArkTS),不能删除
|