@guanlin4924/devflow-pi 0.1.0

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.
Files changed (254) hide show
  1. package/README.md +164 -0
  2. package/docs/OMP-NATIVE-ARCHITECTURE.md +104 -0
  3. package/package.json +40 -0
  4. package/plugins/devflow-core/extensions/devflow-core.ts +1642 -0
  5. package/plugins/devflow-core/package.json +14 -0
  6. package/plugins/devflow-core/runtime/hooks/context_sync_gate.py +174 -0
  7. package/plugins/devflow-core/runtime/hooks/hook_common.py +696 -0
  8. package/plugins/devflow-core/runtime/hooks/index_gate.py +63 -0
  9. package/plugins/devflow-core/runtime/hooks/injection_code_specification.py +7 -0
  10. package/plugins/devflow-core/runtime/hooks/post_tool.py +44 -0
  11. package/plugins/devflow-core/runtime/hooks/start.py +288 -0
  12. package/plugins/devflow-core/skills/workflow-orchestrator/SKILL.md +265 -0
  13. package/plugins/devflow-core/skills/workflow-orchestrator/agents/openai.yaml +4 -0
  14. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/advance_state.rb +520 -0
  15. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/control_io.rb +42 -0
  16. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/init_state.rb +138 -0
  17. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/init_workflow.rb +121 -0
  18. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/inspect_state.rb +553 -0
  19. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/manage_lessons.rb +219 -0
  20. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/sync_artifacts.rb +168 -0
  21. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/update_triage_route.rb +110 -0
  22. package/plugins/devflow-core/skills/workflow-orchestrator/scripts/validate_state.rb +565 -0
  23. package/plugins/devflow-core/skills/workflow-orchestrator/templates/feature-development.yaml +783 -0
  24. package/plugins/devflow-core/skills/workflow-orchestrator/templates/uat-remediation.yaml +143 -0
  25. package/plugins/devflow-core/skills/workflow-orchestrator/templates/workflows-README.md +10 -0
  26. package/plugins/devflow-core/skills/workflow-pipeline/SKILL.md +117 -0
  27. package/plugins/devflow-core/skills/workflow-pipeline/references/pipeline-flow.md +167 -0
  28. package/plugins/devflow-core/skills/workflow-pipeline/references/slice-safety-guide.md +125 -0
  29. package/plugins/devflow-core/skills/workflow-project-context/SKILL.md +819 -0
  30. package/plugins/devflow-core/skills/workflow-project-context/assets/agents-md-template.md +25 -0
  31. package/plugins/devflow-core/skills/workflow-project-context/assets/codebase-backend-spec-template.md +68 -0
  32. package/plugins/devflow-core/skills/workflow-project-context/assets/codebase-frontend-spec-template.md +64 -0
  33. package/plugins/devflow-core/skills/workflow-project-context/assets/codebase-navigation-template.md +168 -0
  34. package/plugins/devflow-core/skills/workflow-project-context/assets/context-domain-index-template.md +43 -0
  35. package/plugins/devflow-core/skills/workflow-project-context/assets/context-spec-index-template.md +45 -0
  36. package/plugins/devflow-core/skills/workflow-project-context/assets/execution-contract-template.md +57 -0
  37. package/plugins/devflow-core/skills/workflow-project-context/assets/navigation-index-template.md +40 -0
  38. package/plugins/devflow-core/skills/workflow-project-context/assets/project-initialization-template.md +109 -0
  39. package/plugins/devflow-core/skills/workflow-project-context/assets/rules-index-template.md +80 -0
  40. package/plugins/devflow-core/skills/workflow-project-context/assets/run-manifest-template.json +40 -0
  41. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/backend/directory-structure.md +46 -0
  42. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/backend/engine.md +46 -0
  43. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/backend/errors.md +46 -0
  44. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/backend/locator.md +46 -0
  45. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/backend/model.md +46 -0
  46. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/backend/repository.md +46 -0
  47. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/backend/router.md +46 -0
  48. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/backend/scheduler.md +46 -0
  49. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/backend/schema.md +46 -0
  50. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/backend/service.md +46 -0
  51. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/backend/testing.md +46 -0
  52. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/frontend/api-client.md +46 -0
  53. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/frontend/case-editor.md +46 -0
  54. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/frontend/components.md +46 -0
  55. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/frontend/directory-structure.md +46 -0
  56. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/frontend/forms.md +46 -0
  57. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/frontend/routing.md +46 -0
  58. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/frontend/state.md +46 -0
  59. package/plugins/devflow-core/skills/workflow-project-context/assets/spec-templates/frontend/testing.md +46 -0
  60. package/plugins/devflow-core/skills/workflow-project-context/assets/stack-spec-template.md +106 -0
  61. package/plugins/devflow-core/skills/workflow-project-context/assets/state-template.md +77 -0
  62. package/plugins/devflow-core/skills/workflow-project-context/assets/toolchain-template.md +37 -0
  63. package/plugins/devflow-core/skills/workflow-project-context/references/navigation-guide.md +262 -0
  64. package/plugins/devflow-core/skills/workflow-project-context/scripts/validate_initialization.py +545 -0
  65. package/plugins/devflow-design/agents/contract-auditor.md +18 -0
  66. package/plugins/devflow-design/extensions/devflow-design.ts +47 -0
  67. package/plugins/devflow-design/package.json +14 -0
  68. package/plugins/devflow-design/skills/workflow-api-call-guide/SKILL.md +142 -0
  69. package/plugins/devflow-design/skills/workflow-api-contract/SKILL.md +150 -0
  70. package/plugins/devflow-design/skills/workflow-api-supplement/SKILL.md +121 -0
  71. package/plugins/devflow-design/skills/workflow-backend-tech-spec/SKILL.md +257 -0
  72. package/plugins/devflow-design/skills/workflow-backend-tech-spec/assets/adr-template.md +57 -0
  73. package/plugins/devflow-design/skills/workflow-backend-tech-spec/assets/backend-spec-template.md +205 -0
  74. package/plugins/devflow-design/skills/workflow-backend-tech-spec/references/affected-module-exploration.md +59 -0
  75. package/plugins/devflow-design/skills/workflow-backend-tech-spec/references/backend-conventions.md +30 -0
  76. package/plugins/devflow-design/skills/workflow-backend-tech-spec/references/code-explore-guide.md +40 -0
  77. package/plugins/devflow-design/skills/workflow-backend-tech-spec/references/project-rule-contract.md +66 -0
  78. package/plugins/devflow-design/skills/workflow-design-rule-pack/SKILL.md +91 -0
  79. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/index.md +71 -0
  80. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/recommendations/accessibility.md +31 -0
  81. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/recommendations/component-library.md +31 -0
  82. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/recommendations/design-systems.md +47 -0
  83. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/recommendations/responsive-grid.md +29 -0
  84. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/recommendations/stack-guidelines.md +31 -0
  85. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/recommendations/ux-patterns.md +40 -0
  86. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tokens/project-tokens.md +19 -0
  87. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/SKILL.md +377 -0
  88. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/charts.csv +26 -0
  89. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/colors.csv +97 -0
  90. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/icons.csv +101 -0
  91. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/landing.csv +31 -0
  92. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/products.csv +97 -0
  93. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/react-performance.csv +45 -0
  94. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/stacks/astro.csv +54 -0
  95. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  96. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  97. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
  98. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  99. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
  100. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
  101. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  102. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/stacks/react.csv +54 -0
  103. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
  104. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  105. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  106. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/stacks/vue.csv +50 -0
  107. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/styles.csv +68 -0
  108. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/typography.csv +58 -0
  109. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
  110. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  111. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/data/web-interface.csv +31 -0
  112. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/scripts/core.py +253 -0
  113. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/scripts/design_system.py +1067 -0
  114. package/plugins/devflow-design/skills/workflow-design-rule-pack/assets/design/tools/ui-ux-pro-max/scripts/search.py +114 -0
  115. package/plugins/devflow-design/skills/workflow-design-rule-pack/scripts/install.py +67 -0
  116. package/plugins/devflow-design/skills/workflow-feature-breakdown/SKILL.md +370 -0
  117. package/plugins/devflow-design/skills/workflow-feature-breakdown/assets/admin-system-template.md +57 -0
  118. package/plugins/devflow-design/skills/workflow-feature-breakdown/assets/api-service-template.md +42 -0
  119. package/plugins/devflow-design/skills/workflow-feature-breakdown/assets/c-end-system-template.md +25 -0
  120. package/plugins/devflow-design/skills/workflow-feature-breakdown/assets/output-template.md +139 -0
  121. package/plugins/devflow-design/skills/workflow-feature-breakdown/references/bug-rules.md +12 -0
  122. package/plugins/devflow-design/skills/workflow-feature-breakdown/references/exception-checklist.md +31 -0
  123. package/plugins/devflow-design/skills/workflow-feature-breakdown/references/trace-integrity-guide.md +153 -0
  124. package/plugins/devflow-design/skills/workflow-feature-breakdown/references/writing-guide.md +92 -0
  125. package/plugins/devflow-design/skills/workflow-frontend-tech-spec/SKILL.md +223 -0
  126. package/plugins/devflow-design/skills/workflow-frontend-tech-spec/assets/frontend-spec-template.md +204 -0
  127. package/plugins/devflow-design/skills/workflow-frontend-tech-spec/references/affected-module-exploration.md +58 -0
  128. package/plugins/devflow-design/skills/workflow-frontend-tech-spec/references/component-patterns.md +42 -0
  129. package/plugins/devflow-design/skills/workflow-frontend-tech-spec/references/frontend-conventions.md +28 -0
  130. package/plugins/devflow-design/skills/workflow-frontend-tech-spec/references/frontend-stack-slots/common-web.md +53 -0
  131. package/plugins/devflow-design/skills/workflow-frontend-tech-spec/references/frontend-stack-slots/next.md +40 -0
  132. package/plugins/devflow-design/skills/workflow-frontend-tech-spec/references/frontend-stack-slots/react.md +41 -0
  133. package/plugins/devflow-design/skills/workflow-frontend-tech-spec/references/frontend-stack-slots/vue.md +41 -0
  134. package/plugins/devflow-design/skills/workflow-frontend-tech-spec/references/project-rule-contract.md +95 -0
  135. package/plugins/devflow-design/skills/workflow-integration-verify/SKILL.md +172 -0
  136. package/plugins/devflow-design/skills/workflow-ui-spec/SKILL.md +302 -0
  137. package/plugins/devflow-design/skills/workflow-ui-spec/assets/ui-spec-template.md +244 -0
  138. package/plugins/devflow-design/skills/workflow-ui-spec/references/affected-module-exploration.md +55 -0
  139. package/plugins/devflow-implementation/agents/implementation-worker.md +20 -0
  140. package/plugins/devflow-implementation/package.json +6 -0
  141. package/plugins/devflow-implementation/skills/workflow-bug-fix/SKILL.md +124 -0
  142. package/plugins/devflow-implementation/skills/workflow-bug-fix/references/INDEX.md +13 -0
  143. package/plugins/devflow-implementation/skills/workflow-bug-fix/references/adversarial-review.md +35 -0
  144. package/plugins/devflow-implementation/skills/workflow-bug-fix/references/first-principles.md +26 -0
  145. package/plugins/devflow-implementation/skills/workflow-bug-fix/references/lesson-format.md +28 -0
  146. package/plugins/devflow-implementation/skills/workflow-bug-fix/references/root-cause-ladder.md +51 -0
  147. package/plugins/devflow-implementation/skills/workflow-bug-fix/references/seam-analysis.md +30 -0
  148. package/plugins/devflow-implementation/skills/workflow-change-plan/SKILL.md +160 -0
  149. package/plugins/devflow-implementation/skills/workflow-change-plan/references/code-conventions.md +33 -0
  150. package/plugins/devflow-implementation/skills/workflow-change-plan/references/ddl-guidelines.md +60 -0
  151. package/plugins/devflow-implementation/skills/workflow-change-plan/references/output-template.md +217 -0
  152. package/plugins/devflow-implementation/skills/workflow-change-plan/references/project-rule-contract.md +55 -0
  153. package/plugins/devflow-implementation/skills/workflow-execute-phase/SKILL.md +271 -0
  154. package/plugins/devflow-implementation/skills/workflow-execute-phase/references/execute-phase.md +1251 -0
  155. package/plugins/devflow-implementation/skills/workflow-execute-phase/references/ui-brand.md +160 -0
  156. package/plugins/devflow-intel/agents/project-scout.md +27 -0
  157. package/plugins/devflow-intel/extensions/devflow-intel.ts +104 -0
  158. package/plugins/devflow-intel/package.json +14 -0
  159. package/plugins/devflow-intel/skills/code-index-query/SKILL.md +37 -0
  160. package/plugins/devflow-intel/skills/code-index-query/references/query-patterns.md +27 -0
  161. package/plugins/devflow-intel/skills/workflow-code-index/SKILL.md +68 -0
  162. package/plugins/devflow-intel/skills/workflow-code-index/references/adapter-contract.md +38 -0
  163. package/plugins/devflow-intel/skills/workflow-code-index/references/audit-checklist.md +10 -0
  164. package/plugins/devflow-intel/skills/workflow-code-index/references/confidence-rules.md +43 -0
  165. package/plugins/devflow-intel/skills/workflow-code-index/references/data-model.md +74 -0
  166. package/plugins/devflow-intel/skills/workflow-code-index/references/discovery.md +24 -0
  167. package/plugins/devflow-intel/skills/workflow-code-index/references/query-guide.md +20 -0
  168. package/plugins/devflow-intel/skills/workflow-code-index/scripts/adapters/__init__.py +1 -0
  169. package/plugins/devflow-intel/skills/workflow-code-index/scripts/adapters/base.py +30 -0
  170. package/plugins/devflow-intel/skills/workflow-code-index/scripts/adapters/generic_text.py +287 -0
  171. package/plugins/devflow-intel/skills/workflow-code-index/scripts/adapters/registry.py +17 -0
  172. package/plugins/devflow-intel/skills/workflow-code-index/scripts/code_index.py +437 -0
  173. package/plugins/devflow-intel/skills/workflow-code-index/scripts/core/__init__.py +1 -0
  174. package/plugins/devflow-intel/skills/workflow-code-index/scripts/core/discovery.py +139 -0
  175. package/plugins/devflow-intel/skills/workflow-code-index/scripts/core/hashing.py +11 -0
  176. package/plugins/devflow-intel/skills/workflow-code-index/scripts/core/scanner.py +115 -0
  177. package/plugins/devflow-intel/skills/workflow-code-index/scripts/core/schema.py +123 -0
  178. package/plugins/devflow-intel/skills/workflow-code-index/scripts/validators/__init__.py +1 -0
  179. package/plugins/devflow-intel/skills/workflow-code-index/scripts/validators/project_binding_check.py +66 -0
  180. package/plugins/devflow-intel/skills/workflow-code-index/scripts/validators/relation_check.py +36 -0
  181. package/plugins/devflow-intel/skills/workflow-code-index/scripts/validators/schema_validate.py +11 -0
  182. package/plugins/devflow-intel/skills/workflow-code-index/scripts/validators/stale_check.py +42 -0
  183. package/plugins/devflow-intel/skills/workflow-code-index/scripts/writers/__init__.py +1 -0
  184. package/plugins/devflow-intel/skills/workflow-code-index/scripts/writers/jsonl_writer.py +25 -0
  185. package/plugins/devflow-intel/skills/workflow-code-index/scripts/writers/markdown_writer.py +106 -0
  186. package/plugins/devflow-intel/skills/workflow-code-index/scripts/writers/sqlite_writer.py +143 -0
  187. package/plugins/devflow-intel/skills/workflow-context-sync/SKILL.md +381 -0
  188. package/plugins/devflow-intel/skills/workflow-context-sync/agents/openai.yaml +4 -0
  189. package/plugins/devflow-intel/skills/workflow-context-sync/scripts/context_sync_cursor.py +241 -0
  190. package/plugins/devflow-intel/skills/workflow-update-navigation/SKILL.md +186 -0
  191. package/plugins/devflow-intel/skills/workflow-update-navigation/references/incremental-update-guide.md +47 -0
  192. package/plugins/devflow-quality/agents/code-reviewer.md +18 -0
  193. package/plugins/devflow-quality/agents/verification-runner.md +21 -0
  194. package/plugins/devflow-quality/extensions/devflow-quality.ts +59 -0
  195. package/plugins/devflow-quality/package.json +14 -0
  196. package/plugins/devflow-quality/skills/code-review/SKILL.md +288 -0
  197. package/plugins/devflow-quality/skills/code-review/references/cross-layer-checklist.md +70 -0
  198. package/plugins/devflow-quality/skills/code-review/references/dao-checklist.md +70 -0
  199. package/plugins/devflow-quality/skills/code-review/references/handler-checklist.md +48 -0
  200. package/plugins/devflow-quality/skills/code-review/references/repository-checklist.md +44 -0
  201. package/plugins/devflow-quality/skills/code-review/references/service-checklist.md +57 -0
  202. package/plugins/devflow-quality/skills/code-review/references/spec-checklist.md +34 -0
  203. package/plugins/devflow-quality/skills/code-review/references/vo-checklist.md +26 -0
  204. package/plugins/devflow-quality/skills/workflow-audit-milestone/SKILL.md +31 -0
  205. package/plugins/devflow-quality/skills/workflow-audit-milestone/references/audit-milestone.md +328 -0
  206. package/plugins/devflow-quality/skills/workflow-complete-milestone/SKILL.md +132 -0
  207. package/plugins/devflow-quality/skills/workflow-complete-milestone/assets/milestone-archive.md +123 -0
  208. package/plugins/devflow-quality/skills/workflow-complete-milestone/references/complete-milestone.md +775 -0
  209. package/plugins/devflow-quality/skills/workflow-complete-milestone/references/milestone-archive.md +123 -0
  210. package/plugins/devflow-quality/skills/workflow-generate-mainflow-cases/SKILL.md +126 -0
  211. package/plugins/devflow-quality/skills/workflow-generate-mainflow-cases/references/api-mainflow-rules.md +27 -0
  212. package/plugins/devflow-quality/skills/workflow-generate-mainflow-cases/references/codebase-discovery.md +54 -0
  213. package/plugins/devflow-quality/skills/workflow-generate-mainflow-cases/references/intermediate-format.md +244 -0
  214. package/plugins/devflow-quality/skills/workflow-generate-mainflow-cases/references/mainflow-selection.md +36 -0
  215. package/plugins/devflow-quality/skills/workflow-generate-mainflow-cases/references/project-dsl-contract.md +190 -0
  216. package/plugins/devflow-quality/skills/workflow-generate-mainflow-cases/references/ui-mainflow-rules.md +110 -0
  217. package/plugins/devflow-quality/skills/workflow-generate-mainflow-cases/scripts/compile_dsl.py +583 -0
  218. package/plugins/devflow-quality/skills/workflow-generate-mainflow-cases/scripts/discover_codebases.py +199 -0
  219. package/plugins/devflow-quality/skills/workflow-generate-mainflow-cases/scripts/normalize_case_payloads.py +177 -0
  220. package/plugins/devflow-quality/skills/workflow-generate-mainflow-cases/scripts/validate_case_payloads.py +370 -0
  221. package/plugins/devflow-quality/skills/workflow-verify-work/SKILL.md +106 -0
  222. package/plugins/devflow-quality/skills/workflow-verify-work/assets/UAT.md +265 -0
  223. package/plugins/devflow-quality/skills/workflow-verify-work/references/verify-work.md +759 -0
  224. package/plugins/devflow-requirements/agents/requirements-auditor.md +20 -0
  225. package/plugins/devflow-requirements/package.json +6 -0
  226. package/plugins/devflow-requirements/skills/requirement-feasibility-review/SKILL.md +219 -0
  227. package/plugins/devflow-requirements/skills/requirement-feasibility-review/agents/openai.yaml +4 -0
  228. package/plugins/devflow-requirements/skills/requirement-feasibility-review/references/review-method.md +257 -0
  229. package/plugins/devflow-requirements/skills/requirement-feasibility-review/references/review-template.md +80 -0
  230. package/plugins/devflow-requirements/skills/workflow-demand-clarify/SKILL.md +325 -0
  231. package/plugins/devflow-requirements/skills/workflow-domain-modeling/SKILL.md +163 -0
  232. package/plugins/devflow-requirements/skills/workflow-requirement-baseline/SKILL.md +748 -0
  233. package/plugins/devflow-requirements/skills/workflow-requirement-baseline/assets/baseline-template.md +281 -0
  234. package/plugins/devflow-requirements/skills/workflow-requirement-baseline/references/antipatterns.md +69 -0
  235. package/plugins/devflow-requirements/skills/workflow-requirement-baseline/references/challenge-review-guide.md +158 -0
  236. package/plugins/devflow-requirements/skills/workflow-requirement-baseline/references/decomposition-guide.md +115 -0
  237. package/plugins/devflow-requirements/skills/workflow-requirement-baseline/references/project-context-guide.md +119 -0
  238. package/plugins/devflow-requirements/skills/workflow-requirement-baseline/references/questioning.md +76 -0
  239. package/plugins/devflow-requirements/skills/workflow-requirement-baseline/references/requirement-review-checklist.md +115 -0
  240. package/plugins/devflow-requirements/skills/workflow-requirement-triage/SKILL.md +204 -0
  241. package/plugins/devflow-requirements/skills/workflow-wayfinder/SKILL.md +183 -0
  242. package/src/cli.ts +76 -0
  243. package/src/constants.ts +15 -0
  244. package/src/doctor.ts +66 -0
  245. package/src/paths.ts +37 -0
  246. package/src/platform-extension.ts +46 -0
  247. package/src/project-context.ts +165 -0
  248. package/src/runtime.ts +167 -0
  249. package/src/usage-stats.ts +101 -0
  250. package/templates/commands/start.md +58 -0
  251. package/templates/omp/AGENTS.md +36 -0
  252. package/templates/omp/config.yml +112 -0
  253. package/templates/omp/hook-config.json +18 -0
  254. package/templates/omp/index-policy.json +57 -0
package/src/runtime.ts ADDED
@@ -0,0 +1,167 @@
1
+ import { existsSync } from "node:fs";
2
+ import { mkdir } from "node:fs/promises";
3
+ import path from "node:path";
4
+
5
+ import { OMP_RUNTIME_VERSION, PRODUCT_NAME, PRODUCT_VERSION } from "./constants.ts";
6
+ import { createPlatformExtension } from "./platform-extension.ts";
7
+ import { devflowAgentDir, devflowHome, pluginRoots, projectSessionDir, sharedOmpAgentDir } from "./paths.ts";
8
+ import type { ProjectContext } from "./project-context.ts";
9
+
10
+ export interface RuntimeOptions {
11
+ initialPrompt?: string;
12
+ originalOmpAgentDir?: string;
13
+ resume?: boolean | string;
14
+ hasUI?: boolean;
15
+ enableMCP?: boolean;
16
+ enableLsp?: boolean;
17
+ }
18
+
19
+ const MANAGED_SETTINGS: Record<string, unknown> = {
20
+ modelRoleStorage: "user",
21
+ disabledProviders: ["claude", "codex", "cursor", "gemini", "github", "opencode"],
22
+ "skills.enabled": true,
23
+ "skills.enableSkillCommands": true,
24
+ "skills.enableClaudeUser": false,
25
+ "skills.enableClaudeProject": false,
26
+ "skills.enableCodexUser": false,
27
+ "skills.enablePiUser": false,
28
+ "skills.enablePiProject": false,
29
+ "skills.enableAgentsUser": false,
30
+ "skills.enableAgentsProject": false,
31
+ // The interactive session is the high-capability Planner. Low-cost agents
32
+ // are dispatched only through explicit Devflow steps, one at a time by
33
+ // default, so background work cannot silently widen a user's request.
34
+ "modelRoles.default": "@slow",
35
+ "task.batch": false,
36
+ "task.maxConcurrency": 1,
37
+ "task.maxRecursionDepth": 1,
38
+ "task.enableLsp": true,
39
+ "task.agentModelOverrides": {
40
+ "project-scout": "@smol",
41
+ "requirements-auditor": "@slow",
42
+ "contract-auditor": "@slow",
43
+ "implementation-worker": "@task",
44
+ "devflow-code-reviewer": "@slow",
45
+ "verification-runner": "@task",
46
+ },
47
+ "task.isolation.mode": "auto",
48
+ "task.isolation.apply": false,
49
+ "lsp.enabled": true,
50
+ "lsp.lazy": true,
51
+ "lsp.diagnosticsOnWrite": true,
52
+ "tools.approvalMode": "write",
53
+ };
54
+
55
+ export async function createEmbeddedRuntime(project: ProjectContext, options: RuntimeOptions = {}) {
56
+ const productAgentDir = devflowAgentDir();
57
+ const productHome = devflowHome();
58
+ const sharedAgentDir = sharedOmpAgentDir(options.originalOmpAgentDir);
59
+ const sessionDir = projectSessionDir(project.manifest.projectId);
60
+ // OMP's logger uses its state root rather than PI_CODING_AGENT_DIR. Keep
61
+ // embedded Devflow logs private as well, including in sandboxed test runs.
62
+ await Promise.all([
63
+ mkdir(productAgentDir, { recursive: true }),
64
+ mkdir(sessionDir, { recursive: true }),
65
+ mkdir(path.join(productHome, "omp"), { recursive: true }),
66
+ mkdir(path.join(productHome, "logs"), { recursive: true }),
67
+ ]);
68
+
69
+ process.env.PI_CODING_AGENT_DIR = productAgentDir;
70
+ process.env.XDG_STATE_HOME = productHome;
71
+ process.env.DEVFLOW_RUNTIME_MODE = "embedded";
72
+ process.env.DEVFLOW_PROJECT_ROOT = project.root;
73
+ process.env.DEVFLOW_PLUGIN_ROOT = path.join(path.dirname(pluginRoots()[0]), "");
74
+ process.env.DEVFLOW_SESSION_ROOT = sessionDir;
75
+
76
+ // Configure logging before importing the OMP SDK. The SDK's default is
77
+ // ~/.omp/logs, which would break the product/session isolation boundary.
78
+ const utils = await import("@oh-my-pi/pi-utils");
79
+ utils.logger.setTransports({ file: path.join(productHome, "logs") });
80
+ const omp = await import("@oh-my-pi/pi-coding-agent");
81
+ const roots = pluginRoots();
82
+ const configFiles = [path.join(sharedAgentDir, "config.yml"), path.join(sharedAgentDir, "config.yaml")].filter(
83
+ candidate => existsSync(candidate),
84
+ );
85
+ const settings = await omp.Settings.init({
86
+ cwd: project.root,
87
+ agentDir: productAgentDir,
88
+ configFiles,
89
+ overrides: {
90
+ ...MANAGED_SETTINGS,
91
+ // OMP 17.2.7 classifies extension-package skills behind the generic
92
+ // third-party toggle. Explicit custom roots keep ambient providers off
93
+ // while guaranteeing the packaged Devflow skills are present.
94
+ "skills.customDirectories": roots.map(root => path.join(root, "skills")),
95
+ } as never,
96
+ });
97
+ const authStorage = await omp.discoverAuthStorage(sharedAgentDir);
98
+ const modelRegistry = new omp.ModelRegistry(authStorage, path.join(sharedAgentDir, "models.yml"));
99
+ modelRegistry.refreshInBackground();
100
+ let sessionManager;
101
+ if (typeof options.resume === "string") {
102
+ const sessions = await omp.SessionManager.list(project.root, sessionDir);
103
+ const exact = sessions.find(session => session.id === options.resume);
104
+ const candidates = exact ? [exact] : sessions.filter(session => session.id.startsWith(options.resume as string));
105
+ if (candidates.length === 0) throw new Error(`Devflow session not found in this project: ${options.resume}`);
106
+ if (candidates.length > 1) throw new Error(`Devflow session id is ambiguous in this project: ${options.resume}`);
107
+ const matched = candidates[0];
108
+ sessionManager = await omp.SessionManager.open(matched.path, sessionDir);
109
+ } else if (options.resume) {
110
+ sessionManager = await omp.SessionManager.continueRecent(project.root, sessionDir);
111
+ } else {
112
+ sessionManager = omp.SessionManager.create(project.root, sessionDir);
113
+ }
114
+ const runtime = await omp.createAgentSession({
115
+ cwd: project.root,
116
+ agentDir: productAgentDir,
117
+ settings,
118
+ authStorage,
119
+ modelRegistry,
120
+ sessionManager,
121
+ additionalExtensionPaths: roots,
122
+ disableExtensionDiscovery: true,
123
+ extensions: [
124
+ createPlatformExtension({
125
+ sessionRoot: sessionDir,
126
+ projectId: project.manifest.projectId,
127
+ }),
128
+ ],
129
+ hasUI: options.hasUI ?? true,
130
+ enableMCP: options.enableMCP ?? false,
131
+ enableLsp: options.enableLsp ?? true,
132
+ });
133
+ return { omp, runtime, sessionDir };
134
+ }
135
+
136
+ export async function runInteractiveRuntime(project: ProjectContext, options: RuntimeOptions = {}): Promise<void> {
137
+ const { omp, runtime } = await createEmbeddedRuntime(project, {
138
+ ...options,
139
+ hasUI: true,
140
+ });
141
+ const { initTheme } = await import("@oh-my-pi/pi-coding-agent/modes/theme/theme");
142
+ await initTheme(
143
+ true,
144
+ runtime.session.settings.get("symbolPreset"),
145
+ runtime.session.settings.get("colorBlindMode"),
146
+ runtime.session.settings.get("theme.dark"),
147
+ runtime.session.settings.get("theme.light"),
148
+ );
149
+ const mode = new omp.InteractiveMode(
150
+ runtime.session,
151
+ `${OMP_RUNTIME_VERSION} · ${PRODUCT_NAME} ${PRODUCT_VERSION}`,
152
+ undefined,
153
+ runtime.setToolUIContext,
154
+ runtime.lspServers,
155
+ runtime.mcpManager,
156
+ runtime.eventBus,
157
+ );
158
+ await mode.init({ clearInitialTerminalHistory: true });
159
+ mode.renderInitialMessages({ preserveExistingChat: true, clearTerminalHistory: true });
160
+ mode.showStatus(`Devflow project ${project.manifest.name} · ${project.manifest.projectId.slice(0, 8)}`);
161
+ if (runtime.modelFallbackMessage) mode.showWarning(runtime.modelFallbackMessage);
162
+ if (options.initialPrompt) await runtime.session.prompt(options.initialPrompt);
163
+ while (true) {
164
+ const input = await mode.getUserInput();
165
+ await omp.submitInteractiveInput(mode, runtime.session, input);
166
+ }
167
+ }
@@ -0,0 +1,101 @@
1
+ import { readdir, readFile } from "node:fs/promises";
2
+ import path from "node:path";
3
+
4
+ export interface UsageTotals {
5
+ input: number;
6
+ output: number;
7
+ cacheRead: number;
8
+ cacheWrite: number;
9
+ totalTokens: number;
10
+ cost: number;
11
+ assistantMessages: number;
12
+ sessionFiles: number;
13
+ }
14
+
15
+ function emptyUsage(): UsageTotals {
16
+ return {
17
+ input: 0,
18
+ output: 0,
19
+ cacheRead: 0,
20
+ cacheWrite: 0,
21
+ totalTokens: 0,
22
+ cost: 0,
23
+ assistantMessages: 0,
24
+ sessionFiles: 0,
25
+ };
26
+ }
27
+
28
+ function finiteNumber(value: unknown): number {
29
+ return typeof value === "number" && Number.isFinite(value) ? value : 0;
30
+ }
31
+
32
+ function includeTimestamp(timestamp: unknown, from?: string, to?: string): boolean {
33
+ if (!from && !to) return true;
34
+ if (typeof timestamp !== "string") return false;
35
+ const value = Date.parse(timestamp);
36
+ if (!Number.isFinite(value)) return false;
37
+ if (from && value < Date.parse(`${from}T00:00:00.000Z`)) return false;
38
+ if (to && value > Date.parse(`${to}T23:59:59.999Z`)) return false;
39
+ return true;
40
+ }
41
+
42
+ async function jsonlFiles(root: string): Promise<string[]> {
43
+ const entries = await readdir(root, { withFileTypes: true }).catch(() => []);
44
+ const nested = await Promise.all(
45
+ entries.map(async entry => {
46
+ const target = path.join(root, entry.name);
47
+ if (entry.isDirectory()) return jsonlFiles(target);
48
+ return entry.isFile() && entry.name.endsWith(".jsonl") ? [target] : [];
49
+ }),
50
+ );
51
+ return nested.flat();
52
+ }
53
+
54
+ export async function aggregateUsage(
55
+ sessionRoot: string,
56
+ range: { from?: string; to?: string } = {},
57
+ ): Promise<UsageTotals> {
58
+ const totals = emptyUsage();
59
+ const files = await jsonlFiles(sessionRoot);
60
+ totals.sessionFiles = files.length;
61
+ for (const file of files) {
62
+ const content = await readFile(file, "utf8").catch(() => "");
63
+ for (const line of content.split("\n")) {
64
+ if (!line.trim()) continue;
65
+ let entry: Record<string, unknown>;
66
+ try {
67
+ entry = JSON.parse(line) as Record<string, unknown>;
68
+ } catch {
69
+ continue;
70
+ }
71
+ if (entry.type !== "message" || !includeTimestamp(entry.timestamp, range.from, range.to)) continue;
72
+ const message = entry.message as Record<string, unknown> | undefined;
73
+ if (message?.role !== "assistant") continue;
74
+ const usage = message.usage as Record<string, unknown> | undefined;
75
+ if (!usage) continue;
76
+ const cost = usage.cost as Record<string, unknown> | undefined;
77
+ totals.input += finiteNumber(usage.input);
78
+ totals.output += finiteNumber(usage.output);
79
+ totals.cacheRead += finiteNumber(usage.cacheRead);
80
+ totals.cacheWrite += finiteNumber(usage.cacheWrite);
81
+ totals.totalTokens += finiteNumber(usage.totalTokens);
82
+ totals.cost += finiteNumber(cost?.total);
83
+ totals.assistantMessages += 1;
84
+ }
85
+ }
86
+ return totals;
87
+ }
88
+
89
+ export function renderUsage(totals: UsageTotals): string {
90
+ return [
91
+ "Devflow usage",
92
+ `sessions: ${totals.sessionFiles}`,
93
+ `assistant messages: ${totals.assistantMessages}`,
94
+ `input: ${totals.input}`,
95
+ `output: ${totals.output}`,
96
+ `cache read: ${totals.cacheRead}`,
97
+ `cache write: ${totals.cacheWrite}`,
98
+ `total tokens: ${totals.totalTokens}`,
99
+ `cost: $${totals.cost.toFixed(6)}`,
100
+ ].join("\n");
101
+ }
@@ -0,0 +1,58 @@
1
+ # 研发会话初始化
2
+
3
+ 当 `<workflow>`、`<index-entrypoints>` 和 `<pipeline-state>` 已由 SessionStart hook 注入时,按以下指令执行。
4
+
5
+ ---
6
+
7
+ ## 初始化行为
8
+
9
+ ### 1. 如果有 `<intent>` 块(跨 /clear 意图)
10
+
11
+ 根据 intent 中的 action 执行:
12
+
13
+ - **`"action": "continue"`** → 直接按 `<workflow>` 从 `<pipeline-state>` 的当前步骤继续,**不要问用户**。简短告知后将下一步的 skill 调起来。
14
+ - **`"action": "skill", "skill": "workflow-xxx", "args": "..."`** → 直接调用该 skill,**不要问用户**。
15
+
16
+ ### 2. 如果没有 `<intent>` 块(正常启动或手动 /clear)
17
+
18
+ 汇报当前流水线状态(基于 `<pipeline-state>`):
19
+ - 已完成步骤和产物
20
+ - 当前卡在哪一步
21
+ - 推荐下一步操作
22
+
23
+ 检查 git 状态:
24
+ - 当前分支
25
+ - 最近 3 条提交
26
+ - 是否有未提交的变更
27
+
28
+ 询问用户:
29
+
30
+ > **接下来做什么?**
31
+ >
32
+ > - 继续当前功能(继续推荐下一步)
33
+ > - 开始新功能:提供功能名 + 需求描述
34
+ > - 其他操作
35
+
36
+ ---
37
+
38
+ ## 跨步骤上下文管理
39
+
40
+ **关键约定**:当用户要求进入下一个 workflow 步骤时(说"继续"、"下一步"、或直接调用 workflow skill),在执行新 skill 之前先做两件事:
41
+
42
+ 1. 写入 `.planning/.next-intent`:
43
+ - 继续下一步:`{"action": "continue"}`
44
+ - 调用指定 skill:`{"action": "skill", "skill": "workflow-verify-work", "args": "..."}`
45
+ 2. 执行 `/clear`
46
+
47
+ `/clear` 后 SessionStart hook 重新注入上下文,`<intent>` 块会告知此会话的意图,无需再问用户即可直接进入下一步。
48
+
49
+ **重要**:只在需要切换 workflow 步骤时才做这个流程。用户中间的提问、讨论、代码审查等正常对话不要 `/clear`。
50
+
51
+ ## 执行中的行为准则
52
+
53
+ - workflow skill 使用 `skill://<name>` 按需读取(如 `skill://workflow-verify-work`)。
54
+ - 上下文管理:你觉得需要时就 `/clear`,不要等 compaction。`/clear` 后 hook 会自动恢复 pipeline 状态和索引入口。
55
+ - 优先读取最新的规则、规范和导航索引;索引缺失或过期时回退到 LSP、搜索和源码事实,并显式报告降级状态
56
+ - 读 `.context/lessons/README.md`,避免已知陷阱
57
+ - 每个步骤完成后更新 `.planning/STATE.md`
58
+ - 遇到不确定的情况,在 `.context/lessons/` 中记录
@@ -0,0 +1,36 @@
1
+ # Devflow Project Agent
2
+
3
+ This repository uses an OMP-native, project-scoped software delivery runtime.
4
+
5
+ ## Control plane
6
+
7
+ - Start only through `/devflow start <feature>|<phase>` after `/devflow doctor` passes; resume with `/devflow resume`.
8
+ - Inspect workflow state with `devflow_state`; do not infer state from chat history.
9
+ - Initialize delivery with `devflow_bootstrap`.
10
+ - Mutate checkpoints and steps only with `devflow_transition`.
11
+ - Never directly edit `.planning/STATE.md`, `.planning/.next-intent`, `.planning/workflows/`, or `.planning/artifacts/index.yaml`.
12
+ - The parent session is the only workflow-state writer. Task agents return evidence or patches and never advance state.
13
+
14
+ ## Evidence order
15
+
16
+ 1. Read the smallest relevant project index when it exists and is current.
17
+ 2. Verify material claims with LSP, targeted search, tests, and source code.
18
+ 3. If an index is absent or stale, continue from source-of-truth evidence and explicitly report degraded index coverage.
19
+
20
+ An index accelerates discovery; it never overrides source code, executable tests, or an approved contract.
21
+
22
+ ## Skills and roles
23
+
24
+ - Load skills on demand with `skill://<name>`; do not preload the entire library.
25
+ - Use `project-scout` for read-only repository exploration.
26
+ - Use `requirements-auditor` and `contract-auditor` as adversarial reviewers, not decision authorities.
27
+ - Use `implementation-worker` only for an approved bounded plan and in task isolation.
28
+ - Use `devflow-code-reviewer` and `verification-runner` independently from implementation.
29
+ - Do not silently inherit the parent model for task agents. `@smol`, `@task`, and `@slow` must resolve to distinct project models before automatic delivery starts.
30
+
31
+ ## Completion
32
+
33
+ - A model assertion is not validation evidence.
34
+ - Record exact commands and results for tests, builds, migrations, and acceptance checks.
35
+ - When context reconciliation is requested, follow `skill://workflow-context-sync`, validate the required level, then acknowledge through `devflow_context_sync`.
36
+ - Human checkpoints never pass silently in headless mode.
@@ -0,0 +1,112 @@
1
+ # Devflow owns this project-local OMP profile. Model ids stay in the user's
2
+ # global config; only role storage and development policy are project-scoped.
3
+ modelRoleStorage: project
4
+
5
+ # Do not import competing editor/harness configuration into this dedicated Pi.
6
+ # These are discovery-source ids, not model-provider ids.
7
+ disabledProviders:
8
+ - claude
9
+ - codex
10
+ - cursor
11
+ - gemini
12
+ - github
13
+ - opencode
14
+
15
+ skills:
16
+ enabled: true
17
+ # /devflow is the canonical entry. /skill:* remains enabled for diagnosis and
18
+ # manual recovery; state transitions are still enforced by Devflow tools.
19
+ enableSkillCommands: true
20
+ customDirectories:
21
+ - .skills/plugins/devflow-core/skills
22
+ - .skills/plugins/devflow-intel/skills
23
+ - .skills/plugins/devflow-requirements/skills
24
+ - .skills/plugins/devflow-design/skills
25
+ - .skills/plugins/devflow-implementation/skills
26
+ - .skills/plugins/devflow-quality/skills
27
+ includeSkills:
28
+ - code-index-query
29
+ - code-review
30
+ - requirement-feasibility-review
31
+ - workflow-api-call-guide
32
+ - workflow-api-contract
33
+ - workflow-api-supplement
34
+ - workflow-audit-milestone
35
+ - workflow-backend-tech-spec
36
+ - workflow-bug-fix
37
+ - workflow-change-plan
38
+ - workflow-code-index
39
+ - workflow-complete-milestone
40
+ - workflow-context-sync
41
+ - workflow-demand-clarify
42
+ - workflow-design-rule-pack
43
+ - workflow-domain-modeling
44
+ - workflow-execute-phase
45
+ - workflow-feature-breakdown
46
+ - workflow-frontend-tech-spec
47
+ - workflow-generate-mainflow-cases
48
+ - workflow-integration-verify
49
+ - workflow-orchestrator
50
+ - workflow-pipeline
51
+ - workflow-project-context
52
+ - workflow-requirement-baseline
53
+ - workflow-requirement-triage
54
+ - workflow-ui-spec
55
+ - workflow-update-navigation
56
+ - workflow-verify-work
57
+ - workflow-wayfinder
58
+ enableClaudeUser: false
59
+ enableClaudeProject: false
60
+ enableCodexUser: false
61
+ enablePiUser: false
62
+ enablePiProject: false
63
+ enableAgentsUser: false
64
+ enableAgentsProject: false
65
+
66
+ task:
67
+ batch: true
68
+ maxConcurrency: 4
69
+ maxRecursionDepth: 1
70
+ enableLsp: true
71
+ # Agent-name overrides take precedence over agent frontmatter and parent-model
72
+ # inheritance. /devflow doctor refuses to start until @smol, @task, and @slow
73
+ # resolve to three distinct authenticated models in the project role store.
74
+ agentModelOverrides:
75
+ project-scout: "@smol"
76
+ requirements-auditor: "@slow"
77
+ contract-auditor: "@slow"
78
+ implementation-worker: "@task"
79
+ devflow-code-reviewer: "@slow"
80
+ verification-runner: "@task"
81
+ isolation:
82
+ mode: auto
83
+ apply: false
84
+
85
+ lsp:
86
+ enabled: true
87
+ lazy: true
88
+ diagnosticsOnWrite: true
89
+
90
+ tools:
91
+ approvalMode: write
92
+ approval:
93
+ read: allow
94
+ grep: allow
95
+ find: allow
96
+ lsp: allow
97
+ bash: prompt
98
+ devflow_doctor: allow
99
+ devflow_state: allow
100
+ devflow_bootstrap: prompt
101
+ devflow_transition: prompt
102
+ devflow_artifact: prompt
103
+ devflow_code_index: allow
104
+ devflow_context_cursor: prompt
105
+ devflow_design_rule: prompt
106
+ devflow_mainflow: prompt
107
+ devflow_skill_script: prompt
108
+ devflow_context_sync: allow
109
+
110
+ advisor:
111
+ enabled: false
112
+ subagents: false
@@ -0,0 +1,18 @@
1
+ {
2
+ "sources": {
3
+ "state": ".planning/STATE.md",
4
+ "workflow": ".context/workflow.md",
5
+ "indexes": [
6
+ ".planning/rules/INDEX.md",
7
+ ".context/spec/index.md",
8
+ ".planning/navigation/INDEX.md",
9
+ ".planning/code-index/INDEX.md"
10
+ ],
11
+ "lessons": ".context/lessons/README.md"
12
+ },
13
+ "gates": {
14
+ "index_first": {
15
+ "policy": ".agent-gates/index-first.json"
16
+ }
17
+ }
18
+ }
@@ -0,0 +1,57 @@
1
+ {
2
+ "version": 2,
3
+ "mode": "advisory",
4
+ "protected_roots": [],
5
+ "required_evidence": [
6
+ ".planning/rules/INDEX.md",
7
+ ".context/spec/index.md",
8
+ ".planning/navigation/INDEX.md"
9
+ ],
10
+ "optional_evidence": [
11
+ ".planning/code-index/INDEX.md"
12
+ ],
13
+ "allowed_before_gate": [
14
+ "AGENTS.md",
15
+ "README.md",
16
+ ".omp/**",
17
+ ".planning/**",
18
+ ".context/**",
19
+ ".agent-gates/**",
20
+ ".skills/**"
21
+ ],
22
+ "context_sync": {
23
+ "enabled": true,
24
+ "auto_light": true,
25
+ "light_timeout_seconds": 120,
26
+ "full_file_threshold": 30,
27
+ "ignore": [
28
+ ".omp/**",
29
+ ".planning/**",
30
+ ".context/**",
31
+ ".agent-gates/**",
32
+ ".skills/**"
33
+ ],
34
+ "medium_patterns": [
35
+ "**/routes.*",
36
+ "**/router.*",
37
+ "**/routes/**",
38
+ "**/api/**",
39
+ "**/*handler.*",
40
+ "**/controllers/**",
41
+ "**/migrations/**",
42
+ "package.json",
43
+ "**/package.json",
44
+ "go.mod",
45
+ "**/go.mod",
46
+ "Cargo.toml",
47
+ "**/Cargo.toml",
48
+ "pyproject.toml",
49
+ "**/pyproject.toml",
50
+ "Makefile",
51
+ "**/Makefile",
52
+ "**/vite.config.*",
53
+ "**/next.config.*"
54
+ ],
55
+ "full_patterns": []
56
+ }
57
+ }