@ngockhoale/ukit 1.1.6
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/CHANGELOG.md +179 -0
- package/LICENSE +21 -0
- package/README.md +189 -0
- package/bin/ukit +30 -0
- package/manifests/platform.full.yaml +1194 -0
- package/package.json +71 -0
- package/scripts/bug/triage.mjs +37 -0
- package/scripts/index/build-index.mjs +35 -0
- package/scripts/index/query-index.mjs +92 -0
- package/scripts/index/refresh-index.mjs +85 -0
- package/scripts/release/verify-release.mjs +56 -0
- package/src/bug/triageBug.js +123 -0
- package/src/cli/adapters.js +148 -0
- package/src/cli/commands/diff.js +51 -0
- package/src/cli/commands/doctor.js +125 -0
- package/src/cli/commands/indexArgs.js +73 -0
- package/src/cli/commands/indexTools.js +509 -0
- package/src/cli/commands/install.js +293 -0
- package/src/cli/commands/memory.js +126 -0
- package/src/cli/commands/status.js +8 -0
- package/src/cli/commands/uninstall.js +51 -0
- package/src/cli/index.js +109 -0
- package/src/context/detectProjectContext.js +49 -0
- package/src/context/detectProviders.js +12 -0
- package/src/core/applyPlan.js +89 -0
- package/src/core/buildPlan.js +228 -0
- package/src/core/compact/index.js +294 -0
- package/src/core/compact/threshold.js +936 -0
- package/src/core/diffPlan.js +73 -0
- package/src/core/ensureGitignore.js +117 -0
- package/src/core/fileOps.js +188 -0
- package/src/core/memory/hygiene.js +160 -0
- package/src/core/memory/index.js +2 -0
- package/src/core/memory/retrieval.js +476 -0
- package/src/core/memory/store.js +202 -0
- package/src/core/metadata.js +132 -0
- package/src/core/migrateLegacy.js +139 -0
- package/src/core/output/index.js +1309 -0
- package/src/core/paths.js +13 -0
- package/src/core/report.js +17 -0
- package/src/core/router/advisor.js +42 -0
- package/src/core/router/index.js +2 -0
- package/src/core/router/router.js +164 -0
- package/src/core/runInstallPipeline.js +365 -0
- package/src/core/runtimeConfig.js +190 -0
- package/src/core/runtimePaths.js +24 -0
- package/src/core/status.js +186 -0
- package/src/core/token/index.js +328 -0
- package/src/core/uninstall.js +246 -0
- package/src/core/validation/confidence.js +89 -0
- package/src/core/validation/index.js +2 -0
- package/src/core/validation/validator.js +165 -0
- package/src/index/buildIndex.js +1392 -0
- package/src/index/gitHooks.js +109 -0
- package/src/index/importResolution.js +377 -0
- package/src/index/languageTools.js +127 -0
- package/src/index/paths.js +27 -0
- package/src/index/queryIndex.js +637 -0
- package/src/index/relatedTests.js +237 -0
- package/src/index/resolveContext.js +345 -0
- package/src/index/routeCatalog.js +258 -0
- package/src/index/taskRouting.js +677 -0
- package/src/index/verificationPlan.js +437 -0
- package/src/manifest/loadManifest.js +22 -0
- package/src/manifest/selectItems.js +78 -0
- package/src/manifest/validateManifest.js +115 -0
- package/src/render/buildVariables.js +39 -0
- package/src/render/renderTemplate.js +44 -0
- package/src/stack/detectStack.js +213 -0
- package/templates/.claude/agents/bug-debugger.md +57 -0
- package/templates/.claude/agents/feature-implementer.md +55 -0
- package/templates/.claude/config/providers.md +25 -0
- package/templates/.claude/hooks/auto-allow-bash.sh +155 -0
- package/templates/.claude/hooks/auto-prune-bash.sh +75 -0
- package/templates/.claude/hooks/block-dangerous.sh +54 -0
- package/templates/.claude/hooks/compress-output.sh +17 -0
- package/templates/.claude/hooks/protect-files.sh +37 -0
- package/templates/.claude/hooks/reinject-context.sh +28 -0
- package/templates/.claude/hooks/session-start.md +13 -0
- package/templates/.claude/hooks/skill-router.sh +1681 -0
- package/templates/.claude/hooks/verification-guard.sh +271 -0
- package/templates/.claude/settings.json +144 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/mce/mc.xsd +75 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/templates/.claude/skills/_shared/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/templates/.claude/skills/_shared/ooxml/scripts/pack.py +159 -0
- package/templates/.claude/skills/_shared/ooxml/scripts/unpack.py +29 -0
- package/templates/.claude/skills/_shared/ooxml/scripts/validate.py +69 -0
- package/templates/.claude/skills/_shared/ooxml/scripts/validation/__init__.py +15 -0
- package/templates/.claude/skills/_shared/ooxml/scripts/validation/base.py +951 -0
- package/templates/.claude/skills/_shared/ooxml/scripts/validation/docx.py +274 -0
- package/templates/.claude/skills/_shared/ooxml/scripts/validation/pptx.py +315 -0
- package/templates/.claude/skills/_shared/ooxml/scripts/validation/redlining.py +279 -0
- package/templates/.claude/skills/backend-api/SKILL.md +26 -0
- package/templates/.claude/skills/canvas-design/LICENSE.txt +202 -0
- package/templates/.claude/skills/canvas-design/SKILL.md +130 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/BricolageGrotesque-Bold.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/BricolageGrotesque-OFL.txt +93 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/BricolageGrotesque-Regular.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/InstrumentSans-Bold.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/InstrumentSans-BoldItalic.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/InstrumentSans-Italic.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/InstrumentSans-OFL.txt +93 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/InstrumentSans-Regular.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/InstrumentSerif-Italic.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/InstrumentSerif-Regular.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/JetBrainsMono-Bold.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/JetBrainsMono-OFL.txt +93 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/JetBrainsMono-Regular.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/Lora-Bold.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/Lora-BoldItalic.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/Lora-Italic.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/Lora-OFL.txt +93 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/Lora-Regular.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/NothingYouCouldDo-OFL.txt +93 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/NothingYouCouldDo-Regular.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/Outfit-Bold.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/Outfit-OFL.txt +93 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/Outfit-Regular.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/Tektur-Medium.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/Tektur-OFL.txt +93 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/Tektur-Regular.ttf +0 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/YoungSerif-OFL.txt +93 -0
- package/templates/.claude/skills/canvas-design/canvas-fonts/YoungSerif-Regular.ttf +0 -0
- package/templates/.claude/skills/code-review/SKILL.md +97 -0
- package/templates/.claude/skills/debugging-toolkit/SKILL.md +156 -0
- package/templates/.claude/skills/delivery/SKILL.md +92 -0
- package/templates/.claude/skills/discover-security/SKILL.md +86 -0
- package/templates/.claude/skills/docker-packaging/SKILL.md +60 -0
- package/templates/.claude/skills/docs-manager/SKILL.md +465 -0
- package/templates/.claude/skills/docs-manager/init-project-docs.sh +70 -0
- package/templates/.claude/skills/docs-manager/templates/README.md.template +50 -0
- package/templates/.claude/skills/docs-manager/templates/agent-roles.md.template +24 -0
- package/templates/.claude/skills/docs-manager/templates/coding-conventions.md.template +28 -0
- package/templates/.claude/skills/docs-manager/templates/memory.md.template +30 -0
- package/templates/.claude/skills/docs-manager/templates/onboarding.md.template +20 -0
- package/templates/.claude/skills/docs-manager/templates/project.md.template +26 -0
- package/templates/.claude/skills/docs-quality/SKILL.md +148 -0
- package/templates/.claude/skills/docx/LICENSE.txt +30 -0
- package/templates/.claude/skills/docx/SKILL.md +197 -0
- package/templates/.claude/skills/docx/docx-js.md +350 -0
- package/templates/.claude/skills/docx/ooxml.md +610 -0
- package/templates/.claude/skills/docx/scripts/__init__.py +1 -0
- package/templates/.claude/skills/docx/scripts/document.py +1276 -0
- package/templates/.claude/skills/docx/scripts/templates/comments.xml +3 -0
- package/templates/.claude/skills/docx/scripts/templates/commentsExtended.xml +3 -0
- package/templates/.claude/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
- package/templates/.claude/skills/docx/scripts/templates/commentsIds.xml +3 -0
- package/templates/.claude/skills/docx/scripts/templates/people.xml +3 -0
- package/templates/.claude/skills/docx/scripts/utilities.py +374 -0
- package/templates/.claude/skills/duraone/SKILL.md +204 -0
- package/templates/.claude/skills/duraone/references/backend.md +636 -0
- package/templates/.claude/skills/duraone/references/frontend.md +1506 -0
- package/templates/.claude/skills/duraone/references/sql.md +631 -0
- package/templates/.claude/skills/duraone/references/workflow.md +520 -0
- package/templates/.claude/skills/executing-plans/SKILL.md +76 -0
- package/templates/.claude/skills/file-organizer/SKILL.md +433 -0
- package/templates/.claude/skills/frontend/SKILL.md +26 -0
- package/templates/.claude/skills/frontend-design/LICENSE.txt +177 -0
- package/templates/.claude/skills/frontend-design/SKILL.md +42 -0
- package/templates/.claude/skills/frontend-vue/SKILL.md +127 -0
- package/templates/.claude/skills/frontend-vue/components/Control/Box.vue +137 -0
- package/templates/.claude/skills/frontend-vue/components/Control/Button.vue +93 -0
- package/templates/.claude/skills/frontend-vue/components/Control/ButtonBar.vue +29 -0
- package/templates/.claude/skills/frontend-vue/components/Control/ButtonFloat.vue +62 -0
- package/templates/.claude/skills/frontend-vue/components/Control/CheckButton.vue +75 -0
- package/templates/.claude/skills/frontend-vue/components/Control/Checkbox.vue +58 -0
- package/templates/.claude/skills/frontend-vue/components/Control/Datetime.vue +148 -0
- package/templates/.claude/skills/frontend-vue/components/Control/Dropdownlist.vue +156 -0
- package/templates/.claude/skills/frontend-vue/components/Control/Input.vue +106 -0
- package/templates/.claude/skills/frontend-vue/components/Control/Label.vue +38 -0
- package/templates/.claude/skills/frontend-vue/components/Control/Master/BoxColumn.vue +24 -0
- package/templates/.claude/skills/frontend-vue/components/Control/Popup/Confirm.vue +33 -0
- package/templates/.claude/skills/frontend-vue/components/Control/Popup/Info.vue +32 -0
- package/templates/.claude/skills/frontend-vue/components/Control/Popup/ModalInfo.vue +39 -0
- package/templates/.claude/skills/frontend-vue/components/Control/Popup/Reject.vue +64 -0
- package/templates/.claude/skills/frontend-vue/components/Control/Tag.vue +82 -0
- package/templates/.claude/skills/frontend-vue/components/Control/Upload.vue +61 -0
- package/templates/.claude/skills/frontend-vue/components/ControlMobile/Dropdownlist.vue +103 -0
- package/templates/.claude/skills/frontend-vue/components/ControlMobile/PagingBar.vue +108 -0
- package/templates/.claude/skills/frontend-vue/components/ControlMobile/UploadImage.vue +137 -0
- package/templates/.claude/skills/frontend-vue/components/Grid/AG.vue +806 -0
- package/templates/.claude/skills/frontend-vue/components/Grid/AntTable.vue +253 -0
- package/templates/.claude/skills/frontend-vue/components/Grid/CustomDropdownEditor.vue +43 -0
- package/templates/.claude/skills/frontend-vue/components/Grid/CustomDropdownEditorEnable.vue +55 -0
- package/templates/.claude/skills/frontend-vue/components/Grid/HtmlTable.vue +40 -0
- package/templates/.claude/skills/frontend-vue/components/PDFViewer.vue +25 -0
- package/templates/.claude/skills/frontend-vue/components/Panel/FormView.vue +309 -0
- package/templates/.claude/skills/frontend-vue/components/Partial/Footer.vue +23 -0
- package/templates/.claude/skills/frontend-vue/components/Partial/Header.vue +265 -0
- package/templates/.claude/skills/frontend-vue/components/Partial/Sidebar.vue +122 -0
- package/templates/.claude/skills/frontend-vue/components/Template.vue +16 -0
- package/templates/.claude/skills/frontend-vue/components/View/Form.vue +89 -0
- package/templates/.claude/skills/frontend-vue/composables/indexDBStore.js +140 -0
- package/templates/.claude/skills/frontend-vue/composables/masterApi.js +362 -0
- package/templates/.claude/skills/frontend-vue/composables/state.js +578 -0
- package/templates/.claude/skills/frontend-vue/composables/useRequest.js +221 -0
- package/templates/.claude/skills/frontend-vue/composables/useSession.js +179 -0
- package/templates/.claude/skills/frontend-vue/composables/useTranslation.js +54 -0
- package/templates/.claude/skills/frontend-vue/composables/useWebSocket.js +257 -0
- package/templates/.claude/skills/frontend-vue/composables/userObj.js +111 -0
- package/templates/.claude/skills/frontend-vue/composables/utils.js +322 -0
- package/templates/.claude/skills/frontend-vue/reference/composables-example.vue +320 -0
- package/templates/.claude/skills/frontend-vue/reference/form-example.vue +183 -0
- package/templates/.claude/skills/frontend-vue/reference/grid-example.vue +147 -0
- package/templates/.claude/skills/frontend-vue/reference/masterdata-example/[id].vue +106 -0
- package/templates/.claude/skills/frontend-vue/reference/masterdata-example/index.vue +58 -0
- package/templates/.claude/skills/frontend-vue/reference/popup-example.vue +159 -0
- package/templates/.claude/skills/pdf/LICENSE.txt +30 -0
- package/templates/.claude/skills/pdf/SKILL.md +294 -0
- package/templates/.claude/skills/pdf/forms.md +205 -0
- package/templates/.claude/skills/pdf/reference.md +612 -0
- package/templates/.claude/skills/pdf/scripts/check_bounding_boxes.py +70 -0
- package/templates/.claude/skills/pdf/scripts/check_bounding_boxes_test.py +226 -0
- package/templates/.claude/skills/pdf/scripts/check_fillable_fields.py +12 -0
- package/templates/.claude/skills/pdf/scripts/convert_pdf_to_images.py +35 -0
- package/templates/.claude/skills/pdf/scripts/create_validation_image.py +41 -0
- package/templates/.claude/skills/pdf/scripts/extract_form_field_info.py +152 -0
- package/templates/.claude/skills/pdf/scripts/fill_fillable_fields.py +114 -0
- package/templates/.claude/skills/pdf/scripts/fill_pdf_form_with_annotations.py +108 -0
- package/templates/.claude/skills/pdf-processing/SKILL.md +107 -0
- package/templates/.claude/skills/pdf-processing-pro/FORMS.md +610 -0
- package/templates/.claude/skills/pdf-processing-pro/OCR.md +137 -0
- package/templates/.claude/skills/pdf-processing-pro/SKILL.md +296 -0
- package/templates/.claude/skills/pdf-processing-pro/TABLES.md +626 -0
- package/templates/.claude/skills/pdf-processing-pro/scripts/analyze_form.py +307 -0
- package/templates/.claude/skills/postgres/SKILL.md +69 -0
- package/templates/.claude/skills/postgres/reference/fn_get_examples.sql +208 -0
- package/templates/.claude/skills/postgres/reference/fn_rpt_examples.sql +239 -0
- package/templates/.claude/skills/postgres/reference/utility_functions.sql +94 -0
- package/templates/.claude/skills/pptx/LICENSE.txt +30 -0
- package/templates/.claude/skills/pptx/SKILL.md +484 -0
- package/templates/.claude/skills/pptx/html2pptx.md +625 -0
- package/templates/.claude/skills/pptx/ooxml.md +427 -0
- package/templates/.claude/skills/pptx/scripts/html2pptx.js +979 -0
- package/templates/.claude/skills/pptx/scripts/inventory.py +1020 -0
- package/templates/.claude/skills/pptx/scripts/rearrange.py +231 -0
- package/templates/.claude/skills/pptx/scripts/replace.py +385 -0
- package/templates/.claude/skills/pptx/scripts/thumbnail.py +450 -0
- package/templates/.claude/skills/repo-maintenance/SKILL.md +97 -0
- package/templates/.claude/skills/research/EXAMPLES.md +434 -0
- package/templates/.claude/skills/research/REFERENCE.md +399 -0
- package/templates/.claude/skills/research/SKILL.md +136 -0
- package/templates/.claude/skills/root-cause-tracing/SKILL.md +174 -0
- package/templates/.claude/skills/root-cause-tracing/find-polluter.sh +63 -0
- package/templates/.claude/skills/sharing-skills/SKILL.md +194 -0
- package/templates/.claude/skills/sql-optimization-patterns/SKILL.md +493 -0
- package/templates/.claude/skills/subagent-driven-development/SKILL.md +189 -0
- package/templates/.claude/skills/systematic-debugging/CREATION-LOG.md +119 -0
- package/templates/.claude/skills/systematic-debugging/SKILL.md +295 -0
- package/templates/.claude/skills/systematic-debugging/test-academic.md +14 -0
- package/templates/.claude/skills/systematic-debugging/test-pressure-1.md +58 -0
- package/templates/.claude/skills/systematic-debugging/test-pressure-2.md +68 -0
- package/templates/.claude/skills/systematic-debugging/test-pressure-3.md +69 -0
- package/templates/.claude/skills/test-driven-development/SKILL.md +364 -0
- package/templates/.claude/skills/testing-anti-patterns/SKILL.md +302 -0
- package/templates/.claude/skills/testing-quality/SKILL.md +97 -0
- package/templates/.claude/skills/verification-before-completion/SKILL.md +139 -0
- package/templates/.claude/skills/webapp-testing/LICENSE.txt +202 -0
- package/templates/.claude/skills/webapp-testing/SKILL.md +96 -0
- package/templates/.claude/skills/webapp-testing/examples/console_logging.py +35 -0
- package/templates/.claude/skills/webapp-testing/examples/element_discovery.py +40 -0
- package/templates/.claude/skills/webapp-testing/examples/static_html_automation.py +33 -0
- package/templates/.claude/skills/webapp-testing/scripts/with_server.py +106 -0
- package/templates/.claude/ukit/index/build-index.mjs +28 -0
- package/templates/.claude/ukit/index/cache-utils.mjs +140 -0
- package/templates/.claude/ukit/index/lib/index-core.mjs +2800 -0
- package/templates/.claude/ukit/index/query-index.mjs +150 -0
- package/templates/.claude/ukit/index/refresh-index.mjs +57 -0
- package/templates/.claude/ukit/index/reset-auto-permissions.mjs +76 -0
- package/templates/.claude/ukit/index/resolve-context.mjs +279 -0
- package/templates/.claude/ukit/index/route-catalog.mjs +258 -0
- package/templates/.claude/ukit/index/route-task.mjs +1994 -0
- package/templates/.claude/ukit/index/triage.mjs +133 -0
- package/templates/.claude/ukit/index/verify-context.mjs +689 -0
- package/templates/.claude/ukit/runtime/compact-threshold.mjs +1013 -0
- package/templates/.claude/ukit/runtime/output-compression.mjs +1340 -0
- package/templates/.claude/ukit/runtime/reinject-context.mjs +874 -0
- package/templates/.claude/ukit/runtime/token-utils.mjs +500 -0
- package/templates/.codex/README.md +83 -0
- package/templates/.codex/settings.json +187 -0
- package/templates/.gitignore +75 -0
- package/templates/AGENTS.md +116 -0
- package/templates/CLAUDE.md +93 -0
- package/templates/adapter-presets/antigravity/README.md +22 -0
- package/templates/adapter-presets/antigravity/rules.md +49 -0
- package/templates/adapter-presets/claude/settings.local.json +42 -0
- package/templates/adapter-presets/codex/settings.local.json +6 -0
- package/templates/adapter-presets/opencode/opencode.template.json +1 -0
- package/templates/docs/BUGFIX.md +20 -0
- package/templates/docs/BUG_INDEX.md +12 -0
- package/templates/docs/BUG_METRICS.md +7 -0
- package/templates/docs/BUG_TEMPLATE.md +13 -0
- package/templates/docs/CODE_MAP.md +35 -0
- package/templates/docs/INSTALL.md +113 -0
- package/templates/docs/MEMORY.md +49 -0
- package/templates/docs/PROJECT.md +50 -0
- package/templates/docs/UKIT_USAGE_GUIDE.md +147 -0
- package/templates/docs/WORKLOG.md +10 -0
- package/templates/ukit/README.md +14 -0
- package/templates/ukit/storage/cache/compact-history.json +3 -0
- package/templates/ukit/storage/cache/compact-pressure.json +1 -0
- package/templates/ukit/storage/cache/output-history.json +3 -0
- package/templates/ukit/storage/cache/prompt-cache.json +3 -0
- package/templates/ukit/storage/config.json +37 -0
- package/templates/ukit/storage/memory/projects/.gitkeep +2 -0
- package/templates/ukit/storage/memory/sessions/.gitkeep +0 -0
- package/templates/ukit/storage/memory/user.json +5 -0
|
@@ -0,0 +1,465 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: docs-manager
|
|
3
|
+
description: Standardized documentation workflow for template-based projects.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Documentation Manager Skill
|
|
7
|
+
|
|
8
|
+
> Skill này giúp AI agents làm việc với docs chuẩn hóa trong mọi project
|
|
9
|
+
|
|
10
|
+
## When to Use This Skill
|
|
11
|
+
|
|
12
|
+
AI agent NÊN dùng skill này khi:
|
|
13
|
+
|
|
14
|
+
- 🆕 Bắt đầu làm việc với project mới
|
|
15
|
+
- 📖 Cần hiểu cấu trúc và quy tắc của project
|
|
16
|
+
- 🏗️ Đưa ra quyết định về kiến trúc
|
|
17
|
+
- 🐛 Debug vấn đề phức tạp
|
|
18
|
+
- 🤝 Handoff giữa các agents
|
|
19
|
+
- 📝 Cập nhật documentation
|
|
20
|
+
|
|
21
|
+
## Documentation Structure
|
|
22
|
+
|
|
23
|
+
Mọi project sử dụng skill này PHẢI có folder `docs/` với cấu trúc:
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
docs/
|
|
27
|
+
├── README.md # 🎯 BẮT ĐẦU TẠI ĐÂY - Navigation hub
|
|
28
|
+
├── project.md # 📋 Project overview
|
|
29
|
+
├── memory.md # 🧠 Decisions & context log
|
|
30
|
+
│
|
|
31
|
+
├── architecture/ # 🏗️ System design
|
|
32
|
+
│ ├── overview.md # Architecture tổng quan
|
|
33
|
+
│ ├── tech-stack.md # Technologies sử dụng
|
|
34
|
+
│ ├── data-model.md # Database schema
|
|
35
|
+
│ ├── api-design.md # API specifications
|
|
36
|
+
│ └── deployment.md # Infrastructure
|
|
37
|
+
│
|
|
38
|
+
├── agents/ # 🤖 Multi-agent coordination
|
|
39
|
+
│ ├── agent-roles.md # Vai trò từng agent
|
|
40
|
+
│ ├── orchestration.md # Flow điều phối
|
|
41
|
+
│ ├── prompts/ # System prompts
|
|
42
|
+
│ │ ├── architect.md
|
|
43
|
+
│ │ ├── coder.md
|
|
44
|
+
│ │ ├── debugger.md
|
|
45
|
+
│ │ └── orchestrator.md
|
|
46
|
+
│ └── handoff-rules.md # Quy tắc chuyển giao
|
|
47
|
+
│
|
|
48
|
+
├── standards/ # 📏 Coding standards
|
|
49
|
+
│ ├── coding-conventions.md # Code style
|
|
50
|
+
│ ├── commit-conventions.md # Git conventions
|
|
51
|
+
│ ├── file-structure.md # File organization
|
|
52
|
+
│ ├── error-handling.md # Error handling
|
|
53
|
+
│ └── security.md # Security rules
|
|
54
|
+
│
|
|
55
|
+
├── workflows/ # 🔄 Development processes
|
|
56
|
+
│ ├── development.md # Feature development flow
|
|
57
|
+
│ ├── debugging.md # Debug process
|
|
58
|
+
│ ├── testing.md # Testing strategy
|
|
59
|
+
│ ├── deployment.md # Deployment process
|
|
60
|
+
│ └── code-review.md # Review checklist
|
|
61
|
+
│
|
|
62
|
+
├── context/ # 📚 Business context
|
|
63
|
+
│ ├── business-rules.md # Business logic
|
|
64
|
+
│ ├── constraints.md # Technical constraints
|
|
65
|
+
│ ├── dependencies.md # External dependencies
|
|
66
|
+
│ └── known-issues.md # Known issues & workarounds
|
|
67
|
+
│
|
|
68
|
+
├── guides/ # 📖 How-to guides
|
|
69
|
+
│ ├── onboarding.md # AI onboarding
|
|
70
|
+
│ ├── quick-start.md # Quick setup
|
|
71
|
+
│ ├── troubleshooting.md # Common problems
|
|
72
|
+
│ └── faq.md # FAQs
|
|
73
|
+
│
|
|
74
|
+
└── models/ # 🧠 AI model configs
|
|
75
|
+
├── model-configs.md # Model configurations
|
|
76
|
+
├── model-selection.md # When to use which model
|
|
77
|
+
├── token-optimization.md # Token optimization
|
|
78
|
+
└── fallback-strategy.md # Fallback handling
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
## Workflow: How AI Should Use This Skill
|
|
82
|
+
|
|
83
|
+
### 🎬 Phase 1: Initial Context Loading (LUÔN LÀM ĐẦU TIÊN)
|
|
84
|
+
|
|
85
|
+
**Khi bắt đầu với project mới hoặc conversation mới:**
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
# Bước 1: Đọc README.md - Entry point
|
|
89
|
+
cat docs/README.md
|
|
90
|
+
|
|
91
|
+
# Bước 2: Hiểu project
|
|
92
|
+
cat docs/project.md
|
|
93
|
+
|
|
94
|
+
# Bước 3: Load context
|
|
95
|
+
cat docs/memory.md
|
|
96
|
+
|
|
97
|
+
# Bước 4: Xác định vai trò
|
|
98
|
+
cat docs/agents/agent-roles.md
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
**Output mong đợi sau Phase 1:**
|
|
102
|
+
|
|
103
|
+
- ✅ Hiểu project làm gì
|
|
104
|
+
- ✅ Biết tech stack
|
|
105
|
+
- ✅ Nắm được decisions quan trọng
|
|
106
|
+
- ✅ Xác định được vai trò của mình
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
### 🛠️ Phase 2: Task-Specific Preparation
|
|
111
|
+
|
|
112
|
+
**Tùy vào task type, đọc thêm:**
|
|
113
|
+
|
|
114
|
+
#### Nếu task = "Develop feature mới"
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
cat docs/architecture/overview.md
|
|
118
|
+
cat docs/architecture/data-model.md
|
|
119
|
+
cat docs/standards/coding-conventions.md
|
|
120
|
+
cat docs/workflows/development.md
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
#### Nếu task = "Fix bug"
|
|
124
|
+
|
|
125
|
+
```bash
|
|
126
|
+
cat docs/context/known-issues.md
|
|
127
|
+
cat docs/guides/troubleshooting.md
|
|
128
|
+
cat docs/workflows/debugging.md
|
|
129
|
+
cat docs/memory.md # Tìm cases tương tự
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
#### Nếu task = "Design architecture"
|
|
133
|
+
|
|
134
|
+
```bash
|
|
135
|
+
cat docs/architecture/overview.md
|
|
136
|
+
cat docs/context/constraints.md
|
|
137
|
+
cat docs/context/business-rules.md
|
|
138
|
+
cat docs/standards/coding-conventions.md
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
#### Nếu task = "Review code"
|
|
142
|
+
|
|
143
|
+
```bash
|
|
144
|
+
cat docs/standards/coding-conventions.md
|
|
145
|
+
cat docs/workflows/code-review.md
|
|
146
|
+
cat docs/architecture/data-model.md
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
### ✍️ Phase 3: Execution
|
|
152
|
+
|
|
153
|
+
**Trong quá trình làm:**
|
|
154
|
+
|
|
155
|
+
1. **Tuân thủ standards**
|
|
156
|
+
- Luôn follow `docs/standards/coding-conventions.md`
|
|
157
|
+
- Check `docs/architecture/data-model.md` khi làm việc với DB
|
|
158
|
+
- Apply `docs/standards/error-handling.md`
|
|
159
|
+
|
|
160
|
+
2. **Document decisions**
|
|
161
|
+
- Quyết định quan trọng → ghi vào `docs/memory.md`
|
|
162
|
+
- Phát hiện issue mới → ghi vào `docs/context/known-issues.md`
|
|
163
|
+
- Thay đổi architecture → update `docs/architecture/`
|
|
164
|
+
|
|
165
|
+
3. **Cross-check context**
|
|
166
|
+
- Trước khi implement → check `docs/context/constraints.md`
|
|
167
|
+
- Không chắc business logic → check `docs/context/business-rules.md`
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
### 🔄 Phase 4: Handoff & Documentation
|
|
172
|
+
|
|
173
|
+
**Trước khi handoff hoặc kết thúc task:**
|
|
174
|
+
|
|
175
|
+
1. **Update memory.md**
|
|
176
|
+
|
|
177
|
+
```markdown
|
|
178
|
+
## [2025-01-24] - [Task Title]
|
|
179
|
+
|
|
180
|
+
**Context**: Làm gì? Tại sao?
|
|
181
|
+
**Decision**: Quyết định quan trọng nào?
|
|
182
|
+
**Impact**: Ảnh hưởng đến đâu?
|
|
183
|
+
**Next Steps**: Cần làm gì tiếp?
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
2. **Update relevant docs**
|
|
187
|
+
- Architecture changed? → Update `docs/architecture/`
|
|
188
|
+
- New convention? → Update `docs/standards/`
|
|
189
|
+
- Found issue? → Update `docs/context/known-issues.md`
|
|
190
|
+
|
|
191
|
+
3. **Prepare handoff**
|
|
192
|
+
- Summarize work done
|
|
193
|
+
- Document blockers/questions
|
|
194
|
+
- Point to relevant docs sections
|
|
195
|
+
|
|
196
|
+
---
|
|
197
|
+
|
|
198
|
+
## Key Principles
|
|
199
|
+
|
|
200
|
+
### ✅ DO (LUÔN LÀM)
|
|
201
|
+
|
|
202
|
+
1. **Đọc docs TRƯỚC KHI code**
|
|
203
|
+
- README.md → project.md → memory.md → standards/
|
|
204
|
+
- Không bao giờ skip bước này
|
|
205
|
+
|
|
206
|
+
2. **Follow conventions NGHIÊM NGẶT**
|
|
207
|
+
- Code style from `standards/coding-conventions.md`
|
|
208
|
+
- Database rules from `architecture/data-model.md`
|
|
209
|
+
- Git commits from `standards/commit-conventions.md`
|
|
210
|
+
|
|
211
|
+
3. **Document EVERYTHING quan trọng**
|
|
212
|
+
- Decisions → memory.md
|
|
213
|
+
- Issues → context/known-issues.md
|
|
214
|
+
- Architecture changes → architecture/
|
|
215
|
+
|
|
216
|
+
4. **Cross-reference docs**
|
|
217
|
+
- Khi đọc 1 file, note references đến files khác
|
|
218
|
+
- Build mental map của toàn bộ docs
|
|
219
|
+
|
|
220
|
+
5. **Update proactively**
|
|
221
|
+
- Tìm thấy thông tin mới? Update docs ngay
|
|
222
|
+
- Không để docs outdated
|
|
223
|
+
|
|
224
|
+
### ❌ DON'T (TUYỆT ĐỐI TRÁNH)
|
|
225
|
+
|
|
226
|
+
1. **Không skip đọc docs**
|
|
227
|
+
- Đừng assume bạn biết project
|
|
228
|
+
- Đừng code trước khi đọc conventions
|
|
229
|
+
|
|
230
|
+
2. **Không violate conventions**
|
|
231
|
+
- Không tự ý thay đổi code style
|
|
232
|
+
- Không bỏ qua architecture constraints
|
|
233
|
+
|
|
234
|
+
3. **Không quên document**
|
|
235
|
+
- Không để decisions chỉ trong chat
|
|
236
|
+
- Không quên update memory.md
|
|
237
|
+
|
|
238
|
+
4. **Không duplicate info**
|
|
239
|
+
- Check docs trước khi thêm mới
|
|
240
|
+
- Consolidate thay vì scatter
|
|
241
|
+
|
|
242
|
+
---
|
|
243
|
+
|
|
244
|
+
## Code Conventions (From docs/standards/coding-conventions.md)
|
|
245
|
+
|
|
246
|
+
### Database Rules
|
|
247
|
+
|
|
248
|
+
```javascript
|
|
249
|
+
// ✅ ĐÚNG: UUID primary keys
|
|
250
|
+
id: {
|
|
251
|
+
type: DataTypes.UUID,
|
|
252
|
+
defaultValue: DataTypes.UUIDV4,
|
|
253
|
+
primaryKey: true
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
// ❌ SAI: Auto-increment
|
|
257
|
+
id: {
|
|
258
|
+
type: DataTypes.INTEGER,
|
|
259
|
+
autoIncrement: true,
|
|
260
|
+
primaryKey: true
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
// ✅ ĐÚNG: No foreign key constraints
|
|
264
|
+
user_id: {
|
|
265
|
+
type: DataTypes.UUID,
|
|
266
|
+
allowNull: false
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
// ❌ SAI: With FK constraint
|
|
270
|
+
user_id: {
|
|
271
|
+
type: DataTypes.UUID,
|
|
272
|
+
references: { model: 'users', key: 'id' }
|
|
273
|
+
}
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
### Oracle Schema Prefix
|
|
277
|
+
|
|
278
|
+
```sql
|
|
279
|
+
-- ✅ ĐÚNG: With schema prefix
|
|
280
|
+
SELECT * FROM APPS.MTL_SYSTEM_ITEMS_B
|
|
281
|
+
|
|
282
|
+
-- ❌ SAI: Without prefix
|
|
283
|
+
SELECT * FROM MTL_SYSTEM_ITEMS_B
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
### Naming Conventions
|
|
287
|
+
|
|
288
|
+
```javascript
|
|
289
|
+
// Variables & Functions: camelCase
|
|
290
|
+
const userName = "LeNK";
|
|
291
|
+
function getUserData() {}
|
|
292
|
+
|
|
293
|
+
// Classes: PascalCase
|
|
294
|
+
class UserService {}
|
|
295
|
+
|
|
296
|
+
// Constants: UPPER_SNAKE_CASE
|
|
297
|
+
const API_BASE_URL = "https://api.example.com";
|
|
298
|
+
|
|
299
|
+
// Files: kebab-case
|
|
300
|
+
user - service.js;
|
|
301
|
+
|
|
302
|
+
// DB tables/columns: snake_case
|
|
303
|
+
(users, user_profiles, created_at);
|
|
304
|
+
```
|
|
305
|
+
|
|
306
|
+
---
|
|
307
|
+
|
|
308
|
+
## Agent Coordination
|
|
309
|
+
|
|
310
|
+
### Agent Roles (From docs/agents/agent-roles.md)
|
|
311
|
+
|
|
312
|
+
**Architect Agent**
|
|
313
|
+
|
|
314
|
+
- Design system architecture
|
|
315
|
+
- Make technical decisions
|
|
316
|
+
- Review architectural changes
|
|
317
|
+
|
|
318
|
+
**Coder Agent**
|
|
319
|
+
|
|
320
|
+
- Implement features
|
|
321
|
+
- Write tests
|
|
322
|
+
- Follow coding standards
|
|
323
|
+
|
|
324
|
+
**Debugger Agent**
|
|
325
|
+
|
|
326
|
+
- Analyze bugs
|
|
327
|
+
- Find root causes
|
|
328
|
+
- Verify fixes
|
|
329
|
+
|
|
330
|
+
**Orchestrator Agent**
|
|
331
|
+
|
|
332
|
+
- Break down tasks
|
|
333
|
+
- Coordinate agents
|
|
334
|
+
- Track progress
|
|
335
|
+
|
|
336
|
+
### Handoff Rules
|
|
337
|
+
|
|
338
|
+
**Khi nào handoff?**
|
|
339
|
+
|
|
340
|
+
- Architect → Coder: Sau khi design xong
|
|
341
|
+
- Coder → Debugger: Khi gặp bug
|
|
342
|
+
- Debugger → Architect: Bug do design issue
|
|
343
|
+
- Any → Orchestrator: Task phức tạp cần break down
|
|
344
|
+
|
|
345
|
+
**Trước khi handoff:**
|
|
346
|
+
|
|
347
|
+
1. Update `docs/memory.md` với context
|
|
348
|
+
2. Summarize work done
|
|
349
|
+
3. List blockers/questions
|
|
350
|
+
4. Point to relevant docs
|
|
351
|
+
|
|
352
|
+
---
|
|
353
|
+
|
|
354
|
+
## Examples
|
|
355
|
+
|
|
356
|
+
### Example 1: Starting New Feature
|
|
357
|
+
|
|
358
|
+
```bash
|
|
359
|
+
# User request: "Add user authentication"
|
|
360
|
+
|
|
361
|
+
# Step 1: Load context
|
|
362
|
+
cat docs/README.md
|
|
363
|
+
cat docs/project.md
|
|
364
|
+
cat docs/memory.md
|
|
365
|
+
|
|
366
|
+
# Step 2: Check if similar feature exists
|
|
367
|
+
grep -r "authentication" docs/memory.md
|
|
368
|
+
cat docs/context/known-issues.md
|
|
369
|
+
|
|
370
|
+
# Step 3: Load relevant docs
|
|
371
|
+
cat docs/architecture/overview.md
|
|
372
|
+
cat docs/architecture/data-model.md
|
|
373
|
+
cat docs/standards/coding-conventions.md
|
|
374
|
+
cat docs/standards/security.md
|
|
375
|
+
|
|
376
|
+
# Step 4: Check workflows
|
|
377
|
+
cat docs/workflows/development.md
|
|
378
|
+
|
|
379
|
+
# Step 5: Start development following conventions
|
|
380
|
+
|
|
381
|
+
# Step 6: Document decision
|
|
382
|
+
echo "## [2025-01-24] - User Authentication
|
|
383
|
+
**Context**: Need secure user auth
|
|
384
|
+
**Decision**: Using bcrypt + JWT
|
|
385
|
+
**Impact**: New users table, auth middleware
|
|
386
|
+
**Next**: Implement signup/login endpoints" >> docs/memory.md
|
|
387
|
+
```
|
|
388
|
+
|
|
389
|
+
### Example 2: Debugging Issue
|
|
390
|
+
|
|
391
|
+
```bash
|
|
392
|
+
# User: "PostgreSQL auto-increment not working"
|
|
393
|
+
|
|
394
|
+
# Step 1: Check known issues
|
|
395
|
+
cat docs/context/known-issues.md
|
|
396
|
+
|
|
397
|
+
# Step 2: Check conventions
|
|
398
|
+
cat docs/standards/coding-conventions.md
|
|
399
|
+
# → Found: We use UUID, not auto-increment!
|
|
400
|
+
|
|
401
|
+
# Step 3: Check memory for similar cases
|
|
402
|
+
grep -r "auto-increment\|UUID" docs/memory.md
|
|
403
|
+
|
|
404
|
+
# Step 4: Provide solution based on conventions
|
|
405
|
+
# Step 5: Update docs if needed
|
|
406
|
+
```
|
|
407
|
+
|
|
408
|
+
---
|
|
409
|
+
|
|
410
|
+
## Initialization: Setting Up Docs for New Project
|
|
411
|
+
|
|
412
|
+
**Nếu project CHƯA có docs/, tạo từ template:**
|
|
413
|
+
|
|
414
|
+
```bash
|
|
415
|
+
# Create structure
|
|
416
|
+
mkdir -p docs/{architecture,agents/prompts,standards,workflows,context,guides,models}
|
|
417
|
+
|
|
418
|
+
# Create essential files
|
|
419
|
+
touch docs/{README.md,project.md,memory.md}
|
|
420
|
+
touch docs/agents/agent-roles.md
|
|
421
|
+
touch docs/standards/coding-conventions.md
|
|
422
|
+
touch docs/guides/onboarding.md
|
|
423
|
+
|
|
424
|
+
# Copy templates from this skill
|
|
425
|
+
# (Templates sẽ có trong skill folder)
|
|
426
|
+
```
|
|
427
|
+
|
|
428
|
+
---
|
|
429
|
+
|
|
430
|
+
## Success Metrics
|
|
431
|
+
|
|
432
|
+
Skill hoạt động tốt khi:
|
|
433
|
+
|
|
434
|
+
- ✅ AI onboard project < 5 phút
|
|
435
|
+
- ✅ Code consistent theo standards
|
|
436
|
+
- ✅ Ít questions lặp lại
|
|
437
|
+
- ✅ Decisions được document đầy đủ
|
|
438
|
+
- ✅ Handoff giữa agents mượt mà
|
|
439
|
+
- ✅ Docs luôn up-to-date
|
|
440
|
+
|
|
441
|
+
---
|
|
442
|
+
|
|
443
|
+
## Troubleshooting
|
|
444
|
+
|
|
445
|
+
### Problem: Docs outdated
|
|
446
|
+
|
|
447
|
+
**Solution**: Đọc `docs/memory.md` - decision gần nhất là gì?
|
|
448
|
+
|
|
449
|
+
### Problem: Không biết dùng agent nào
|
|
450
|
+
|
|
451
|
+
**Solution**: Đọc `docs/agents/agent-roles.md`
|
|
452
|
+
|
|
453
|
+
### Problem: Không biết convention
|
|
454
|
+
|
|
455
|
+
**Solution**: Đọc `docs/standards/coding-conventions.md`
|
|
456
|
+
|
|
457
|
+
### Problem: Business logic không rõ
|
|
458
|
+
|
|
459
|
+
**Solution**: Đọc `docs/context/business-rules.md`
|
|
460
|
+
|
|
461
|
+
---
|
|
462
|
+
|
|
463
|
+
**Last Updated**: 2025-01-24
|
|
464
|
+
**Version**: 1.0.0
|
|
465
|
+
**Maintained by**: LeNK
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
# Script khởi tạo docs cho project mới
|
|
4
|
+
# Usage: ./init-project-docs.sh "Project Name"
|
|
5
|
+
|
|
6
|
+
PROJECT_NAME=${1:-"New Project"}
|
|
7
|
+
AUTHOR=${2:-$(git config user.name 2>/dev/null || echo "Developer")}
|
|
8
|
+
DATE=$(date +%Y-%m-%d)
|
|
9
|
+
|
|
10
|
+
echo "🚀 Initializing docs for: $PROJECT_NAME"
|
|
11
|
+
echo "📅 Date: $DATE"
|
|
12
|
+
echo "👤 Author: $AUTHOR"
|
|
13
|
+
echo ""
|
|
14
|
+
|
|
15
|
+
# Kiểm tra đã có docs/ chưa
|
|
16
|
+
if [ -d "./docs" ]; then
|
|
17
|
+
echo "⚠️ Warning: docs/ folder already exists!"
|
|
18
|
+
read -p "Overwrite? (y/N): " -n 1 -r
|
|
19
|
+
echo
|
|
20
|
+
if [[ ! $REPLY =~ ^[Yy]$ ]]; then
|
|
21
|
+
echo "❌ Cancelled"
|
|
22
|
+
exit 1
|
|
23
|
+
fi
|
|
24
|
+
rm -rf ./docs
|
|
25
|
+
fi
|
|
26
|
+
|
|
27
|
+
# Tạo cấu trúc
|
|
28
|
+
echo "📁 Creating folder structure..."
|
|
29
|
+
mkdir -p docs/{architecture,agents/prompts,standards,workflows,context,guides,models,integrations}
|
|
30
|
+
|
|
31
|
+
# Copy templates
|
|
32
|
+
SKILL_DIR="$HOME/.claude/skills/docs-manager/templates"
|
|
33
|
+
|
|
34
|
+
echo "📄 Creating files from templates..."
|
|
35
|
+
|
|
36
|
+
# Function replace placeholders
|
|
37
|
+
replace_placeholders() {
|
|
38
|
+
local file=$1
|
|
39
|
+
sed "s/{{PROJECT_NAME}}/$PROJECT_NAME/g; s/{{AUTHOR}}/$AUTHOR/g; s/{{DATE}}/$DATE/g" "$file"
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
# Copy và replace
|
|
43
|
+
replace_placeholders "$SKILL_DIR/README.md.template" > docs/README.md
|
|
44
|
+
replace_placeholders "$SKILL_DIR/project.md.template" > docs/project.md
|
|
45
|
+
replace_placeholders "$SKILL_DIR/memory.md.template" > docs/memory.md
|
|
46
|
+
replace_placeholders "$SKILL_DIR/agent-roles.md.template" > docs/agents/agent-roles.md
|
|
47
|
+
replace_placeholders "$SKILL_DIR/coding-conventions.md.template" > docs/standards/coding-conventions.md
|
|
48
|
+
replace_placeholders "$SKILL_DIR/onboarding.md.template" > docs/guides/onboarding.md
|
|
49
|
+
|
|
50
|
+
# Tạo empty files
|
|
51
|
+
echo "📝 Creating placeholder files..."
|
|
52
|
+
touch docs/architecture/{overview,tech-stack,data-model,api-design,deployment}.md
|
|
53
|
+
touch docs/agents/{orchestration,handoff-rules}.md
|
|
54
|
+
touch docs/agents/prompts/{architect,coder,debugger,orchestrator}.md
|
|
55
|
+
touch docs/standards/{commit-conventions,file-structure,error-handling,security}.md
|
|
56
|
+
touch docs/workflows/{development,debugging,testing,deployment,code-review}.md
|
|
57
|
+
touch docs/context/{business-rules,constraints,dependencies,known-issues}.md
|
|
58
|
+
touch docs/guides/{quick-start,troubleshooting,faq}.md
|
|
59
|
+
touch docs/models/{model-configs,model-selection,token-optimization,fallback-strategy}.md
|
|
60
|
+
touch docs/integrations/.gitkeep
|
|
61
|
+
|
|
62
|
+
echo ""
|
|
63
|
+
echo "✅ Docs initialized successfully!"
|
|
64
|
+
echo ""
|
|
65
|
+
echo "📝 Next steps:"
|
|
66
|
+
echo " 1. Edit docs/project.md - Add project details"
|
|
67
|
+
echo " 2. Edit docs/standards/coding-conventions.md - Customize conventions"
|
|
68
|
+
echo " 3. Edit docs/architecture/overview.md - Document architecture"
|
|
69
|
+
echo ""
|
|
70
|
+
echo "🤖 AI agents can now read docs/ to understand your project!"
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# 🤖 AI Documentation Hub
|
|
2
|
+
|
|
3
|
+
> **Project**: {{PROJECT_NAME}}
|
|
4
|
+
|
|
5
|
+
## 📖 BẮT ĐẦU TẠI ĐÂY
|
|
6
|
+
|
|
7
|
+
### Bước 1: Hiểu dự án
|
|
8
|
+
1. `project.md` - Mission & overview
|
|
9
|
+
2. `memory.md` - Context & decisions
|
|
10
|
+
3. `architecture/overview.md` - System design
|
|
11
|
+
|
|
12
|
+
### Bước 2: Hiểu vai trò
|
|
13
|
+
- `agents/agent-roles.md` - Vai trò của bạn
|
|
14
|
+
- `agents/orchestration.md` - Phối hợp agents
|
|
15
|
+
|
|
16
|
+
### Bước 3: Tuân thủ standards
|
|
17
|
+
- `standards/coding-conventions.md` - PHẢI đọc
|
|
18
|
+
- `standards/file-structure.md` - Tổ chức code
|
|
19
|
+
|
|
20
|
+
## 🎯 Quick Reference
|
|
21
|
+
|
|
22
|
+
**Bắt đầu task mới:**
|
|
23
|
+
```
|
|
24
|
+
1. Đọc memory.md
|
|
25
|
+
2. Đọc context/business-rules.md
|
|
26
|
+
3. Đọc architecture/data-model.md
|
|
27
|
+
4. Follow standards/
|
|
28
|
+
5. Theo workflows/development.md
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
**Gặp vấn đề:**
|
|
32
|
+
```
|
|
33
|
+
1. context/known-issues.md
|
|
34
|
+
2. guides/troubleshooting.md
|
|
35
|
+
3. memory.md
|
|
36
|
+
4. workflows/debugging.md
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## 📊 Cấu trúc
|
|
40
|
+
|
|
41
|
+
- `/architecture` - System design
|
|
42
|
+
- `/agents` - Multi-agent setup
|
|
43
|
+
- `/standards` - Conventions
|
|
44
|
+
- `/workflows` - Processes
|
|
45
|
+
- `/context` - Business logic
|
|
46
|
+
- `/guides` - How-to
|
|
47
|
+
- `/models` - AI configs
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
**Version**: 1.0.0 | **Updated**: {{DATE}}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# AI Agent Roles
|
|
2
|
+
|
|
3
|
+
## 🎭 Agents
|
|
4
|
+
|
|
5
|
+
### Architect
|
|
6
|
+
**Role**: Design & decisions
|
|
7
|
+
**When**: New features, refactoring
|
|
8
|
+
|
|
9
|
+
### Coder
|
|
10
|
+
**Role**: Implementation
|
|
11
|
+
**When**: After design approved
|
|
12
|
+
|
|
13
|
+
### Debugger
|
|
14
|
+
**Role**: Fix issues
|
|
15
|
+
**When**: Bugs, failures
|
|
16
|
+
|
|
17
|
+
### Orchestrator
|
|
18
|
+
**Role**: Coordination
|
|
19
|
+
**When**: Complex tasks
|
|
20
|
+
|
|
21
|
+
## 🔄 Flow
|
|
22
|
+
```
|
|
23
|
+
Request → Orchestrator → Architect → Coder → Debugger
|
|
24
|
+
```
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Coding Conventions
|
|
2
|
+
|
|
3
|
+
## 📦 Database
|
|
4
|
+
- Primary Keys: UUID VARCHAR
|
|
5
|
+
- Foreign Keys: No constraints
|
|
6
|
+
- Naming: snake_case
|
|
7
|
+
- Schema prefix: Required for Postgres
|
|
8
|
+
|
|
9
|
+
## 💻 Code Style
|
|
10
|
+
- Variables: camelCase
|
|
11
|
+
- Classes: PascalCase
|
|
12
|
+
- Constants: UPPER_SNAKE_CASE
|
|
13
|
+
- Files: kebab-case
|
|
14
|
+
|
|
15
|
+
## 🔒 Security
|
|
16
|
+
- Hash: SHA-256 minimum
|
|
17
|
+
- No hardcoded secrets
|
|
18
|
+
- Use env variables
|
|
19
|
+
|
|
20
|
+
## 📝 Comments
|
|
21
|
+
- Explain WHY not WHAT
|
|
22
|
+
- Update with code
|
|
23
|
+
- No obvious comments
|
|
24
|
+
|
|
25
|
+
## ✅ Errors
|
|
26
|
+
- Try-catch async ops
|
|
27
|
+
- Log properly
|
|
28
|
+
- No silent fails
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Project Memory
|
|
2
|
+
|
|
3
|
+
## 🧠 Decisions
|
|
4
|
+
|
|
5
|
+
### [{{DATE}}] - Project Init
|
|
6
|
+
**Context**: Khởi tạo project
|
|
7
|
+
**Decision**: Setup docs structure theo .claude skill
|
|
8
|
+
**Impact**: Standardized documentation
|
|
9
|
+
**Next**: Start development
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## 📝 Notes
|
|
14
|
+
|
|
15
|
+
### [{{DATE}}] - Setup Complete
|
|
16
|
+
**What**: Docs structure ready
|
|
17
|
+
**Why**: Enable AI collaboration
|
|
18
|
+
**Reference**: ~/.claude/skills/docs-manager
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## ⚠️ Known Issues
|
|
23
|
+
|
|
24
|
+
(Chưa có)
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## 🎓 Lessons
|
|
29
|
+
|
|
30
|
+
(Sẽ update)
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# AI Onboarding
|
|
2
|
+
|
|
3
|
+
## 🚀 5-Minute Start
|
|
4
|
+
|
|
5
|
+
1. Read `README.md`
|
|
6
|
+
2. Read `project.md`
|
|
7
|
+
3. Read `memory.md`
|
|
8
|
+
4. Read `agents/agent-roles.md`
|
|
9
|
+
5. Read `standards/coding-conventions.md`
|
|
10
|
+
|
|
11
|
+
## ✅ Checklist
|
|
12
|
+
- [ ] Hiểu project?
|
|
13
|
+
- [ ] Biết vai trò?
|
|
14
|
+
- [ ] Nắm conventions?
|
|
15
|
+
- [ ] Biết khi nào handoff?
|
|
16
|
+
|
|
17
|
+
## 🆘 Help
|
|
18
|
+
1. `guides/troubleshooting.md`
|
|
19
|
+
2. `memory.md`
|
|
20
|
+
3. Ask Orchestrator
|