create-leafmesh 2.6.2__tar.gz → 2.6.3__tar.gz

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 (714) hide show
  1. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/PKG-INFO +1 -1
  2. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/__init__.py +1 -1
  3. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/cli.py +11 -148
  4. create_leafmesh-2.6.3/create_leafmesh/discover.py +269 -0
  5. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/search.py +49 -0
  6. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh.egg-info/PKG-INFO +1 -1
  7. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh.egg-info/SOURCES.txt +2 -0
  8. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/pyproject.toml +1 -1
  9. create_leafmesh-2.6.3/tests/test_discover.py +66 -0
  10. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/tests/test_search.py +31 -1
  11. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/MANIFEST.in +0 -0
  12. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/README.md +0 -0
  13. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/create.py +0 -0
  14. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/deploy.py +0 -0
  15. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/deploy_providers/__init__.py +0 -0
  16. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/deploy_providers/_shared.py +0 -0
  17. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/deploy_providers/aws.py +0 -0
  18. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/deploy_providers/azure.py +0 -0
  19. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/deploy_providers/gcp.py +0 -0
  20. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/Dockerfile +0 -0
  21. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/README.md +0 -0
  22. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/_REFERENCE_ONLY.md +0 -0
  23. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/agency/__init__.py +0 -0
  24. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/agency/advisor_agent.py +0 -0
  25. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/agency/external_agents.py +0 -0
  26. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/agency/fallback_researcher_agent.py +0 -0
  27. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/agency/greeter_agent.py +0 -0
  28. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/agency/processor_agent.py +0 -0
  29. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/agency/researcher_agent.py +0 -0
  30. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/agency/risk_scorer_agent.py +0 -0
  31. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/agency/scheduler_agent.py +0 -0
  32. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/agency/tools.py +0 -0
  33. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/configs/config.yaml +0 -0
  34. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/docker-compose.yml +0 -0
  35. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/dockerignore +0 -0
  36. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/env +0 -0
  37. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/gitignore +0 -0
  38. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/hitl_stub_receiver.py +0 -0
  39. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/main.py +0 -0
  40. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/requirements.txt +0 -0
  41. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/skills/data-handling/SKILL.md +0 -0
  42. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/skills/data-handling/examples.json +0 -0
  43. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/skills/tone-rules.md +0 -0
  44. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/tests/__init__.py +0 -0
  45. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/tests/test_config_shape.py +0 -0
  46. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_inspire/validate_config.py +0 -0
  47. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/_registry.yaml +0 -0
  48. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/Dockerfile +0 -0
  49. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/PRD.md +0 -0
  50. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/README.md +0 -0
  51. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/agency/__init__.py +0 -0
  52. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/agency/_shared/__init__.py +0 -0
  53. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/agency/_shared/audit_logger.py +0 -0
  54. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/agency/_shared/session_stash.py +0 -0
  55. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/agency/_shared/store.py +0 -0
  56. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/agency/code_reviewer_agent.py +0 -0
  57. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/agency/dev_planner_agent.py +0 -0
  58. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/agency/developer_agent.py +0 -0
  59. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/agency/merge_coordinator_agent.py +0 -0
  60. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/agency/product_owner_agent.py +0 -0
  61. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/agency/qa_agent.py +0 -0
  62. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/agency/tools/__init__.py +0 -0
  63. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/agency/tools/tools.py +0 -0
  64. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/configs/config.yaml +0 -0
  65. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/docker-compose.yml +0 -0
  66. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/dockerignore +0 -0
  67. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/env +0 -0
  68. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/gitignore +0 -0
  69. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/main.py +0 -0
  70. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/pytest.ini +0 -0
  71. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/requirements.txt +0 -0
  72. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/tests/__init__.py +0 -0
  73. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/tests/conftest.py +0 -0
  74. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/tests/test_config_shape.py +0 -0
  75. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/ai-dev-squad/validate_config.py +0 -0
  76. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/Dockerfile +0 -0
  77. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/PRD.md +0 -0
  78. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/README.md +0 -0
  79. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/_prompts.json +0 -0
  80. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/agency/__init__.py +0 -0
  81. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/agency/_shared/__init__.py +0 -0
  82. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/agency/_shared/audit_logger.py +0 -0
  83. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/agency/_shared/session_stash.py +0 -0
  84. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/agency/_shared/store.py +0 -0
  85. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/agency/bid_no_bid_decisioner_agent.py +0 -0
  86. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/agency/competitive_intel_agent.py +0 -0
  87. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/agency/contracts_review_agent.py +0 -0
  88. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/agency/precedent_research_agent.py +0 -0
  89. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/agency/pricing_configurator_agent.py +0 -0
  90. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/agency/proposal_assembler_agent.py +0 -0
  91. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/agency/rfp_intake_agent.py +0 -0
  92. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/configs/config.yaml +0 -0
  93. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/docker-compose.yml +0 -0
  94. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/dockerignore +0 -0
  95. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/env +0 -0
  96. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/examples/01_new_rfp_received.json +0 -0
  97. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/examples/02_win_post_mortem.json +0 -0
  98. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/examples/03_loss_with_competitor.json +0 -0
  99. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/examples/04_quarterly_win_rate.json +0 -0
  100. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/examples/README.md +0 -0
  101. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/examples/run_examples.py +0 -0
  102. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/gitignore +0 -0
  103. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/main.py +0 -0
  104. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/pytest.ini +0 -0
  105. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/requirements-dev.txt +0 -0
  106. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/requirements.txt +0 -0
  107. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/tests/__init__.py +0 -0
  108. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/tests/conftest.py +0 -0
  109. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/tests/test_config_shape.py +0 -0
  110. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/tests/test_floors.py +0 -0
  111. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bd-proposals/validate_config.py +0 -0
  112. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/Dockerfile +0 -0
  113. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/PRD.md +0 -0
  114. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/README.md +0 -0
  115. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/_prompts.json +0 -0
  116. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/agency/__init__.py +0 -0
  117. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/agency/_shared/__init__.py +0 -0
  118. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/agency/_shared/audit_logger.py +0 -0
  119. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/agency/_shared/store.py +0 -0
  120. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/agency/allocation_booker_agent.py +0 -0
  121. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/agency/esat_survey_agent.py +0 -0
  122. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/agency/staffing_coordinator_agent.py +0 -0
  123. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/agency/talent_development_agent.py +0 -0
  124. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/agency/workforce_analytics_agent.py +0 -0
  125. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/configs/config.yaml +0 -0
  126. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/docker-compose.yml +0 -0
  127. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/dockerignore +0 -0
  128. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/env +0 -0
  129. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/examples/01_new_project_kickoff.json +0 -0
  130. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/examples/02_weekly_bench_review.json +0 -0
  131. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/examples/03_promotion_readiness.json +0 -0
  132. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/examples/04_person_rolling_off.json +0 -0
  133. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/examples/README.md +0 -0
  134. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/examples/run_examples.py +0 -0
  135. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/gitignore +0 -0
  136. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/main.py +0 -0
  137. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/pytest.ini +0 -0
  138. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/requirements-dev.txt +0 -0
  139. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/requirements.txt +0 -0
  140. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/tests/__init__.py +0 -0
  141. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/tests/conftest.py +0 -0
  142. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/tests/test_agent_logic.py +0 -0
  143. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/tests/test_config_shape.py +0 -0
  144. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/bench-management/validate_config.py +0 -0
  145. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/claude_skills/leafmesh/SKILL.md +0 -0
  146. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/claude_skills/leafmesh/agency-development.md +0 -0
  147. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/claude_skills/leafmesh/agent-config-fields.md +0 -0
  148. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/claude_skills/leafmesh/examples.md +0 -0
  149. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/claude_skills/leafmesh/reference.md +0 -0
  150. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/Dockerfile +0 -0
  151. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/PRD.md +0 -0
  152. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/README.md +0 -0
  153. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/_prompts.json +0 -0
  154. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/agency/__init__.py +0 -0
  155. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/agency/_shared/__init__.py +0 -0
  156. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/agency/_shared/audit_logger.py +0 -0
  157. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/agency/_shared/extract.py +0 -0
  158. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/agency/_shared/health_math.py +0 -0
  159. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/agency/_shared/session_stash.py +0 -0
  160. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/agency/_shared/store.py +0 -0
  161. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/agency/account_intel_agent.py +0 -0
  162. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/agency/health_score_agent.py +0 -0
  163. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/agency/play_runner_agent.py +0 -0
  164. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/agency/renewals_agent.py +0 -0
  165. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/agency/risk_detector_agent.py +0 -0
  166. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/agency/save_play_agent.py +0 -0
  167. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/configs/config.yaml +0 -0
  168. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/docker-compose.yml +0 -0
  169. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/dockerignore +0 -0
  170. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/env +0 -0
  171. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/examples/01_telemetry_dau_drop.json +0 -0
  172. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/examples/02_billing_failed_payment.json +0 -0
  173. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/examples/03_renewal_window_60d.json +0 -0
  174. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/examples/04_executive_change.json +0 -0
  175. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/examples/README.md +0 -0
  176. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/examples/run_examples.py +0 -0
  177. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/gitignore +0 -0
  178. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/main.py +0 -0
  179. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/pytest.ini +0 -0
  180. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/requirements-dev.txt +0 -0
  181. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/requirements.txt +0 -0
  182. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/tests/__init__.py +0 -0
  183. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/tests/conftest.py +0 -0
  184. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/tests/test_agent_logic.py +0 -0
  185. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/tests/test_config_shape.py +0 -0
  186. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-success/validate_config.py +0 -0
  187. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/Dockerfile +0 -0
  188. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/PRD.md +0 -0
  189. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/README.md +0 -0
  190. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/_prompts.json +0 -0
  191. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/agency/__init__.py +0 -0
  192. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/agency/_shared/__init__.py +0 -0
  193. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/agency/_shared/audit_logger.py +0 -0
  194. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/agency/_shared/store.py +0 -0
  195. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/agency/reply_dispatcher_agent.py +0 -0
  196. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/configs/config.yaml +0 -0
  197. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/docker-compose.yml +0 -0
  198. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/dockerignore +0 -0
  199. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/env +0 -0
  200. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/examples/01_password_reset_routine.json +0 -0
  201. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/examples/02_billing_dispute_escalation.json +0 -0
  202. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/examples/03_security_incident.json +0 -0
  203. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/examples/04_kb_gap_signal.json +0 -0
  204. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/examples/README.md +0 -0
  205. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/examples/run_examples.py +0 -0
  206. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/gitignore +0 -0
  207. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/main.py +0 -0
  208. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/pytest.ini +0 -0
  209. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/requirements-dev.txt +0 -0
  210. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/requirements.txt +0 -0
  211. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/tests/__init__.py +0 -0
  212. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/tests/conftest.py +0 -0
  213. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/tests/test_agent_logic.py +0 -0
  214. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/tests/test_config_shape.py +0 -0
  215. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/customer-support/validate_config.py +0 -0
  216. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/Dockerfile +0 -0
  217. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/PRD.md +0 -0
  218. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/README.md +0 -0
  219. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/_prompts.json +0 -0
  220. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/__init__.py +0 -0
  221. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/_shared/__init__.py +0 -0
  222. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/_shared/audit_logger.py +0 -0
  223. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/_shared/compliance_screen.py +0 -0
  224. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/_shared/dedupe.py +0 -0
  225. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/_shared/erp_poster.py +0 -0
  226. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/_shared/matching_math.py +0 -0
  227. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/_shared/session_stash.py +0 -0
  228. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/_shared/store.py +0 -0
  229. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/erp_poster_agent.py +0 -0
  230. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/gl_coding_agent.py +0 -0
  231. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/invoice_intake_agent.py +0 -0
  232. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/loan_origination_agent.py +0 -0
  233. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/loan_servicing_agent.py +0 -0
  234. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/matching_agent.py +0 -0
  235. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/payment_risk_agent.py +0 -0
  236. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/regulatory_monitor_agent.py +0 -0
  237. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/agency/vendor_compliance_agent.py +0 -0
  238. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/configs/config.yaml +0 -0
  239. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/docker-compose.yml +0 -0
  240. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/dockerignore +0 -0
  241. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/env +0 -0
  242. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/examples/01_happy_path_subscription.json +0 -0
  243. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/examples/02_fraud_signal_round_number.json +0 -0
  244. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/examples/03_po_mismatch_exception.json +0 -0
  245. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/examples/04_high_value_cfo_signoff.json +0 -0
  246. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/examples/05_vendor_inquiry.json +0 -0
  247. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/examples/README.md +0 -0
  248. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/examples/run_examples.py +0 -0
  249. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/gitignore +0 -0
  250. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/main.py +0 -0
  251. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/pytest.ini +0 -0
  252. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/requirements-dev.txt +0 -0
  253. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/requirements.txt +0 -0
  254. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/tests/__init__.py +0 -0
  255. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/tests/conftest.py +0 -0
  256. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/tests/test_agent_logic.py +0 -0
  257. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/tests/test_config_shape.py +0 -0
  258. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/tests/test_floors.py +0 -0
  259. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/finance-ops/validate_config.py +0 -0
  260. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/Dockerfile +0 -0
  261. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/PRD.md +0 -0
  262. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/README.md +0 -0
  263. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/_prompts.json +0 -0
  264. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/agency/__init__.py +0 -0
  265. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/agency/_shared/__init__.py +0 -0
  266. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/agency/_shared/audit_logger.py +0 -0
  267. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/agency/_shared/session_stash.py +0 -0
  268. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/agency/_shared/store.py +0 -0
  269. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/agency/commitments_agent.py +0 -0
  270. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/agency/cost_anomaly_agent.py +0 -0
  271. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/agency/cost_tuner_agent.py +0 -0
  272. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/agency/finops_governance_agent.py +0 -0
  273. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/agency/iac_drift_agent.py +0 -0
  274. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/agency/regulatory_monitor_agent.py +0 -0
  275. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/configs/config.yaml +0 -0
  276. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/docker-compose.yml +0 -0
  277. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/dockerignore +0 -0
  278. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/env +0 -0
  279. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/examples/01_ec2_idle_anomaly.json +0 -0
  280. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/examples/02_savings_plan_under_utilised.json +0 -0
  281. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/examples/03_ri_expiry_30d.json +0 -0
  282. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/examples/04_iac_drift_detected.json +0 -0
  283. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/examples/README.md +0 -0
  284. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/examples/run_examples.py +0 -0
  285. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/gitignore +0 -0
  286. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/main.py +0 -0
  287. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/pytest.ini +0 -0
  288. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/requirements-dev.txt +0 -0
  289. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/requirements.txt +0 -0
  290. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/tests/__init__.py +0 -0
  291. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/tests/conftest.py +0 -0
  292. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/tests/test_agent_logic.py +0 -0
  293. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/tests/test_config_shape.py +0 -0
  294. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/infra-cost-ops/validate_config.py +0 -0
  295. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/Dockerfile +0 -0
  296. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/PRD.md +0 -0
  297. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/README.md +0 -0
  298. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/_prompts.json +0 -0
  299. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/agency/__init__.py +0 -0
  300. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/agency/_shared/__init__.py +0 -0
  301. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/agency/_shared/audit_logger.py +0 -0
  302. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/agency/_shared/session_stash.py +0 -0
  303. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/agency/_shared/store.py +0 -0
  304. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/agency/brand_guardian_agent.py +0 -0
  305. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/agency/campaign_strategist_agent.py +0 -0
  306. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/agency/compliance_reviewer_agent.py +0 -0
  307. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/agency/copywriter_agent.py +0 -0
  308. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/agency/market_intelligence_agent.py +0 -0
  309. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/agency/marketing_audit_logger_agent.py +0 -0
  310. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/agency/publisher_agent.py +0 -0
  311. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/configs/config.yaml +0 -0
  312. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/docker-compose.yml +0 -0
  313. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/dockerignore +0 -0
  314. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/env +0 -0
  315. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/examples/01_new_campaign_brief.json +0 -0
  316. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/examples/02_product_launch_kickoff.json +0 -0
  317. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/examples/03_brand_crisis.json +0 -0
  318. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/examples/04_competitor_pricing_move.json +0 -0
  319. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/examples/README.md +0 -0
  320. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/examples/run_examples.py +0 -0
  321. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/gitignore +0 -0
  322. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/main.py +0 -0
  323. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/pytest.ini +0 -0
  324. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/requirements-dev.txt +0 -0
  325. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/requirements.txt +0 -0
  326. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/tests/__init__.py +0 -0
  327. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/tests/conftest.py +0 -0
  328. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/tests/test_agent_logic.py +0 -0
  329. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/tests/test_config_shape.py +0 -0
  330. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/marketing-ops/validate_config.py +0 -0
  331. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/Dockerfile +0 -0
  332. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/PRD.md +0 -0
  333. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/README.md +0 -0
  334. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/__init__.py +0 -0
  335. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/_shared/__init__.py +0 -0
  336. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/_shared/audit_logger.py +0 -0
  337. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/_shared/session_stash.py +0 -0
  338. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/_shared/store.py +0 -0
  339. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/campaign_launcher_agent.py +0 -0
  340. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/campaign_strategist_agent.py +0 -0
  341. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/gtm_strategist_agent.py +0 -0
  342. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/inbox_monitor_agent.py +0 -0
  343. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/meeting_scheduler_agent.py +0 -0
  344. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/offer_architect_agent.py +0 -0
  345. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/outreach_writer_agent.py +0 -0
  346. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/prospector_agent.py +0 -0
  347. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/records_keeper_agent.py +0 -0
  348. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/reply_triager_agent.py +0 -0
  349. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/tools/__init__.py +0 -0
  350. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/agency/tools/tools.py +0 -0
  351. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/configs/config.yaml +0 -0
  352. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/docker-compose.yml +0 -0
  353. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/dockerignore +0 -0
  354. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/env +0 -0
  355. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/gitignore +0 -0
  356. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/main.py +0 -0
  357. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/pytest.ini +0 -0
  358. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/requirements.txt +0 -0
  359. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/tests/__init__.py +0 -0
  360. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/tests/conftest.py +0 -0
  361. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/tests/test_config_shape.py +0 -0
  362. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/outbound-sdr/validate_config.py +0 -0
  363. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/Dockerfile +0 -0
  364. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/PRD.md +0 -0
  365. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/README.md +0 -0
  366. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/_prompts.json +0 -0
  367. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/agency/__init__.py +0 -0
  368. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/agency/_shared/__init__.py +0 -0
  369. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/agency/_shared/audit_logger.py +0 -0
  370. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/agency/_shared/session_stash.py +0 -0
  371. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/agency/_shared/store.py +0 -0
  372. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/agency/equipment_lifecycle_agent.py +0 -0
  373. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/agency/failure_predictor_agent.py +0 -0
  374. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/agency/safety_incident_reporter_agent.py +0 -0
  375. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/agency/spare_parts_forecaster_agent.py +0 -0
  376. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/agency/work_order_scheduler_agent.py +0 -0
  377. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/configs/config.yaml +0 -0
  378. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/docker-compose.yml +0 -0
  379. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/dockerignore +0 -0
  380. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/env +0 -0
  381. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/examples/01_routine_sensor_reading.json +0 -0
  382. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/examples/02_anomaly_failure_predicted.json +0 -0
  383. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/examples/03_safety_critical_shutdown.json +0 -0
  384. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/examples/04_weekly_parts_forecast.json +0 -0
  385. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/examples/README.md +0 -0
  386. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/examples/run_examples.py +0 -0
  387. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/gitignore +0 -0
  388. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/main.py +0 -0
  389. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/pytest.ini +0 -0
  390. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/requirements-dev.txt +0 -0
  391. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/requirements.txt +0 -0
  392. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/tests/__init__.py +0 -0
  393. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/tests/conftest.py +0 -0
  394. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/tests/test_agent_logic.py +0 -0
  395. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/tests/test_config_shape.py +0 -0
  396. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/predictive-maintenance/validate_config.py +0 -0
  397. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/Dockerfile +0 -0
  398. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/PRD.md +0 -0
  399. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/README.md +0 -0
  400. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/TESTING_GUIDE.md +0 -0
  401. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/WORKFLOW_GUIDE.md +0 -0
  402. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/agency/__init__.py +0 -0
  403. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/agency/_shared/__init__.py +0 -0
  404. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/agency/_shared/audit_logger.py +0 -0
  405. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/agency/_shared/session_stash.py +0 -0
  406. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/agency/data_loader.py +0 -0
  407. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/agency/grn_agent.py +0 -0
  408. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/agency/inventory_agent.py +0 -0
  409. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/agency/logistics_agent.py +0 -0
  410. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/agency/order_intake_agent.py +0 -0
  411. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/agency/purchase_order_agent.py +0 -0
  412. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/agency/supplier_agent.py +0 -0
  413. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/agency/supply_report_agent.py +0 -0
  414. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/agency/tariff_classifier_agent.py +0 -0
  415. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/agency/tools.py +0 -0
  416. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/agency/trade_compliance_agent.py +0 -0
  417. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/configs/config.yaml +0 -0
  418. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/configs/inventory.yaml +0 -0
  419. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/configs/open_pos.yaml +0 -0
  420. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/configs/suppliers.yaml +0 -0
  421. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/docker-compose.yml +0 -0
  422. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/dockerignore +0 -0
  423. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/env +0 -0
  424. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/gitignore +0 -0
  425. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/main.py +0 -0
  426. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/requirements.txt +0 -0
  427. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/tests/__init__.py +0 -0
  428. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/tests/test_chain_floors.py +0 -0
  429. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/tests/test_config_shape.py +0 -0
  430. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/procurement-ops/validate_config.py +0 -0
  431. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/Dockerfile +0 -0
  432. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/PRD.md +0 -0
  433. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/README.md +0 -0
  434. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/_prompts.json +0 -0
  435. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/agency/__init__.py +0 -0
  436. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/agency/_shared/__init__.py +0 -0
  437. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/agency/_shared/audit_logger.py +0 -0
  438. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/agency/_shared/session_stash.py +0 -0
  439. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/agency/_shared/store.py +0 -0
  440. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/agency/constraint_flagger_agent.py +0 -0
  441. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/agency/demand_sensor_agent.py +0 -0
  442. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/agency/release_agent.py +0 -0
  443. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/agency/scheduler_agent.py +0 -0
  444. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/agency/supplier_signal_agent.py +0 -0
  445. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/configs/config.yaml +0 -0
  446. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/docker-compose.yml +0 -0
  447. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/dockerignore +0 -0
  448. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/env +0 -0
  449. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/examples/01_demand_signal_normal.json +0 -0
  450. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/examples/02_supplier_delay.json +0 -0
  451. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/examples/03_emergency_constraint_alert.json +0 -0
  452. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/examples/04_supplier_capacity_change.json +0 -0
  453. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/examples/README.md +0 -0
  454. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/examples/run_examples.py +0 -0
  455. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/gitignore +0 -0
  456. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/main.py +0 -0
  457. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/pytest.ini +0 -0
  458. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/requirements-dev.txt +0 -0
  459. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/requirements.txt +0 -0
  460. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/tests/__init__.py +0 -0
  461. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/tests/conftest.py +0 -0
  462. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/tests/test_agent_logic.py +0 -0
  463. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/tests/test_config_shape.py +0 -0
  464. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/production-planning/validate_config.py +0 -0
  465. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/Dockerfile +0 -0
  466. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/PRD.md +0 -0
  467. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/README.md +0 -0
  468. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/_prompts.json +0 -0
  469. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/agency/__init__.py +0 -0
  470. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/agency/_shared/__init__.py +0 -0
  471. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/agency/_shared/audit_logger.py +0 -0
  472. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/agency/_shared/batch_release.py +0 -0
  473. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/agency/_shared/defect_scoring.py +0 -0
  474. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/agency/_shared/session_stash.py +0 -0
  475. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/agency/_shared/spc_math.py +0 -0
  476. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/agency/_shared/store.py +0 -0
  477. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/agency/inspection_intake_agent.py +0 -0
  478. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/agency/quality_engineer_agent.py +0 -0
  479. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/agency/recall_traceability_agent.py +0 -0
  480. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/agency/regulatory_compliance_agent.py +0 -0
  481. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/agency/spc_monitor_agent.py +0 -0
  482. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/configs/config.yaml +0 -0
  483. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/docker-compose.yml +0 -0
  484. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/dockerignore +0 -0
  485. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/env +0 -0
  486. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/examples/01_routine_inspection.json +0 -0
  487. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/examples/02_defect_cluster.json +0 -0
  488. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/examples/03_field_complaint_recall.json +0 -0
  489. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/examples/04_regulatory_audit_pull.json +0 -0
  490. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/examples/README.md +0 -0
  491. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/examples/run_examples.py +0 -0
  492. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/gitignore +0 -0
  493. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/main.py +0 -0
  494. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/pytest.ini +0 -0
  495. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/requirements-dev.txt +0 -0
  496. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/requirements.txt +0 -0
  497. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/tests/__init__.py +0 -0
  498. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/tests/conftest.py +0 -0
  499. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/tests/test_agent_logic.py +0 -0
  500. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/tests/test_config_shape.py +0 -0
  501. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quality-yield/validate_config.py +0 -0
  502. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/Dockerfile +0 -0
  503. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/PRD.md +0 -0
  504. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/README.md +0 -0
  505. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/_prompts.json +0 -0
  506. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/agency/__init__.py +0 -0
  507. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/agency/_shared/__init__.py +0 -0
  508. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/agency/_shared/audit_logger.py +0 -0
  509. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/agency/_shared/session_stash.py +0 -0
  510. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/agency/_shared/store.py +0 -0
  511. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/agency/cost_calculator_agent.py +0 -0
  512. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/agency/deal_compliance_agent.py +0 -0
  513. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/agency/discount_policy_agent.py +0 -0
  514. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/agency/quote_drafter_agent.py +0 -0
  515. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/agency/quote_issuer_agent.py +0 -0
  516. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/agency/rfq_ingester_agent.py +0 -0
  517. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/configs/config.yaml +0 -0
  518. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/docker-compose.yml +0 -0
  519. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/dockerignore +0 -0
  520. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/env +0 -0
  521. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/examples/01_rfq_standard.json +0 -0
  522. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/examples/02_steep_discount_finance.json +0 -0
  523. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/examples/03_competitor_price_change.json +0 -0
  524. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/examples/04_renewal_uplift_bundle.json +0 -0
  525. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/examples/README.md +0 -0
  526. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/examples/run_examples.py +0 -0
  527. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/gitignore +0 -0
  528. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/main.py +0 -0
  529. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/pytest.ini +0 -0
  530. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/requirements-dev.txt +0 -0
  531. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/requirements.txt +0 -0
  532. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/tests/__init__.py +0 -0
  533. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/tests/conftest.py +0 -0
  534. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/tests/test_agent_logic.py +0 -0
  535. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/tests/test_config_shape.py +0 -0
  536. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/tests/test_floors.py +0 -0
  537. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/quote-to-cash/validate_config.py +0 -0
  538. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/Dockerfile +0 -0
  539. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/PRD.md +0 -0
  540. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/README.md +0 -0
  541. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/_prompts.json +0 -0
  542. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/agency/__init__.py +0 -0
  543. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/agency/_shared/__init__.py +0 -0
  544. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/agency/_shared/audit_logger.py +0 -0
  545. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/agency/_shared/session_stash.py +0 -0
  546. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/agency/_shared/store.py +0 -0
  547. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/agency/bias_audit_agent.py +0 -0
  548. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/agency/correspondence_drafter_agent.py +0 -0
  549. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/agency/hiring_assistant_agent.py +0 -0
  550. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/agency/interview_coordinator_agent.py +0 -0
  551. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/agency/req_intake_agent.py +0 -0
  552. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/agency/resume_screener_agent.py +0 -0
  553. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/configs/config.yaml +0 -0
  554. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/docker-compose.yml +0 -0
  555. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/dockerignore +0 -0
  556. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/env +0 -0
  557. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/examples/01_new_req_filed.json +0 -0
  558. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/examples/02_candidate_rejection_letter.json +0 -0
  559. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/examples/03_offer_drafting.json +0 -0
  560. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/examples/04_ghosted_candidate_close.json +0 -0
  561. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/examples/README.md +0 -0
  562. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/examples/run_examples.py +0 -0
  563. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/gitignore +0 -0
  564. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/main.py +0 -0
  565. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/pytest.ini +0 -0
  566. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/requirements-dev.txt +0 -0
  567. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/requirements.txt +0 -0
  568. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/tests/__init__.py +0 -0
  569. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/tests/conftest.py +0 -0
  570. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/tests/test_agent_logic.py +0 -0
  571. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/tests/test_config_shape.py +0 -0
  572. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/recruiting-ops/validate_config.py +0 -0
  573. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/Dockerfile +0 -0
  574. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/PRD.md +0 -0
  575. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/README.md +0 -0
  576. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/_prompts.json +0 -0
  577. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/agency/__init__.py +0 -0
  578. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/agency/_shared/__init__.py +0 -0
  579. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/agency/_shared/audit_logger.py +0 -0
  580. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/agency/_shared/session_stash.py +0 -0
  581. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/agency/_shared/store.py +0 -0
  582. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/agency/_shared/util.py +0 -0
  583. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/agency/lead_intake_agent.py +0 -0
  584. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/agency/lead_qualification_agent.py +0 -0
  585. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/agency/lead_revival_agent.py +0 -0
  586. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/agency/sales_research_agent.py +0 -0
  587. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/configs/config.yaml +0 -0
  588. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/docker-compose.yml +0 -0
  589. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/dockerignore +0 -0
  590. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/env +0 -0
  591. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/examples/01_inbound_demo_request.json +0 -0
  592. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/examples/02_cold_lead_revival.json +0 -0
  593. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/examples/03_competitor_steal_signal.json +0 -0
  594. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/examples/04_event_followup_burst.json +0 -0
  595. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/examples/05_enriched_inbound_lead.json +0 -0
  596. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/examples/06_deal_nurture_sweep.json +0 -0
  597. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/examples/07_abm_account_activation.json +0 -0
  598. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/examples/08_competitive_intel_pull.json +0 -0
  599. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/examples/README.md +0 -0
  600. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/examples/run_examples.py +0 -0
  601. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/gitignore +0 -0
  602. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/main.py +0 -0
  603. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/pytest.ini +0 -0
  604. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/requirements-dev.txt +0 -0
  605. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/requirements.txt +0 -0
  606. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/tests/__init__.py +0 -0
  607. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/tests/conftest.py +0 -0
  608. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/tests/test_agent_logic.py +0 -0
  609. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/tests/test_config_shape.py +0 -0
  610. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/sales-orchestration/validate_config.py +0 -0
  611. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/Dockerfile +0 -0
  612. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/PRD.md +0 -0
  613. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/README.md +0 -0
  614. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/_prompts.json +0 -0
  615. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/agency/__init__.py +0 -0
  616. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/agency/_shared/__init__.py +0 -0
  617. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/agency/_shared/audit_logger.py +0 -0
  618. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/agency/_shared/session_stash.py +0 -0
  619. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/agency/_shared/store.py +0 -0
  620. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/agency/brief_intake_agent.py +0 -0
  621. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/agency/citation_agent.py +0 -0
  622. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/agency/consultant_agent.py +0 -0
  623. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/agency/context_agent.py +0 -0
  624. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/agency/deliverable_assembler_agent.py +0 -0
  625. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/agency/engagement_controller_agent.py +0 -0
  626. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/agency/engagement_status_drafter_agent.py +0 -0
  627. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/agency/performance_review_agent.py +0 -0
  628. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/agency/qa_agent.py +0 -0
  629. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/agency/research_agent.py +0 -0
  630. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/configs/config.yaml +0 -0
  631. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/docker-compose.yml +0 -0
  632. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/dockerignore +0 -0
  633. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/env +0 -0
  634. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/examples/01_new_engagement_memo.json +0 -0
  635. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/examples/02_friday_status_pack.json +0 -0
  636. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/examples/03_high_stakes_deliverable.json +0 -0
  637. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/examples/04_monthly_steering_pack.json +0 -0
  638. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/examples/README.md +0 -0
  639. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/examples/run_examples.py +0 -0
  640. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/gitignore +0 -0
  641. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/main.py +0 -0
  642. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/pytest.ini +0 -0
  643. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/requirements-dev.txt +0 -0
  644. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/requirements.txt +0 -0
  645. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/tests/__init__.py +0 -0
  646. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/tests/conftest.py +0 -0
  647. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/tests/test_agent_logic.py +0 -0
  648. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/tests/test_config_shape.py +0 -0
  649. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/services-delivery/validate_config.py +0 -0
  650. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/Dockerfile +0 -0
  651. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/README.md +0 -0
  652. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/_prompts.json +0 -0
  653. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/agency/__init__.py +0 -0
  654. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/agency/_shared/__init__.py +0 -0
  655. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/agency/_shared/audit_logger.py +0 -0
  656. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/configs/config.yaml +0 -0
  657. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/docker-compose.yml +0 -0
  658. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/dockerignore +0 -0
  659. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/env +0 -0
  660. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/gitignore +0 -0
  661. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/main.py +0 -0
  662. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/pytest.ini +0 -0
  663. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/requirements.txt +0 -0
  664. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/tests/__init__.py +0 -0
  665. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/tests/conftest.py +0 -0
  666. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/tests/test_config_shape.py +0 -0
  667. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/starter/validate_config.py +0 -0
  668. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/Dockerfile +0 -0
  669. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/PRD.md +0 -0
  670. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/README.md +0 -0
  671. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/_prompts.json +0 -0
  672. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/__init__.py +0 -0
  673. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/_shared/__init__.py +0 -0
  674. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/_shared/allocation_math.py +0 -0
  675. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/_shared/audit_logger.py +0 -0
  676. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/_shared/carrier_math.py +0 -0
  677. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/_shared/session_stash.py +0 -0
  678. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/_shared/shrink_math.py +0 -0
  679. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/_shared/store.py +0 -0
  680. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/allocation_agent.py +0 -0
  681. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/carrier_selector_agent.py +0 -0
  682. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/exception_agent.py +0 -0
  683. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/humanoid_status_agent.py +0 -0
  684. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/inspection_humanoid.py +0 -0
  685. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/inventory_control_agent.py +0 -0
  686. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/loader_humanoid.py +0 -0
  687. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/packer_humanoid.py +0 -0
  688. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/picker_humanoid.py +0 -0
  689. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/agency/supplier_relations_agent.py +0 -0
  690. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/configs/config.yaml +0 -0
  691. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/docker-compose.yml +0 -0
  692. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/dockerignore +0 -0
  693. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/env +0 -0
  694. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/examples/01_routine_order.json +0 -0
  695. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/examples/02_short_pick_exception.json +0 -0
  696. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/examples/03_returns_inspection.json +0 -0
  697. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/examples/04_carrier_outage_failover.json +0 -0
  698. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/examples/README.md +0 -0
  699. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/examples/run_examples.py +0 -0
  700. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/gitignore +0 -0
  701. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/main.py +0 -0
  702. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/pytest.ini +0 -0
  703. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/requirements-dev.txt +0 -0
  704. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/requirements.txt +0 -0
  705. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/tests/__init__.py +0 -0
  706. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/tests/conftest.py +0 -0
  707. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/tests/test_agent_logic.py +0 -0
  708. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/tests/test_config_shape.py +0 -0
  709. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh/templates/warehouse-supply-chain/validate_config.py +0 -0
  710. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh.egg-info/dependency_links.txt +0 -0
  711. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh.egg-info/entry_points.txt +0 -0
  712. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh.egg-info/requires.txt +0 -0
  713. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/create_leafmesh.egg-info/top_level.txt +0 -0
  714. {create_leafmesh-2.6.2 → create_leafmesh-2.6.3}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: create-leafmesh
3
- Version: 2.6.2
3
+ Version: 2.6.3
4
4
  Summary: Project scaffolding + cloud-deploy tool for LeafMesh
5
5
  License-Expression: MIT
6
6
  Requires-Python: >=3.10
@@ -1,3 +1,3 @@
1
1
  """create-leafmesh — Project scaffolding + cloud-deploy tool for LeafMesh."""
2
2
 
3
- __version__ = "2.6.2"
3
+ __version__ = "2.6.3"
@@ -196,150 +196,6 @@ def _grouped_templates() -> list[tuple[str, list[dict]]]:
196
196
  return display
197
197
 
198
198
 
199
- def _interactive_search(questionary, style) -> str | None:
200
- """State 1 → state 2 bridge inside the TUI picker.
201
-
202
- Prompt for keywords, run the fuzzy search, and — if anything matches —
203
- auto-switch to a template-level selection (state 2). Returns a chosen
204
- slug, or None to return to the category view (state 1).
205
- """
206
- ready = list_templates(include_planned=False)
207
- query = questionary.text(
208
- "Search templates (keywords — spelling needn't be exact):",
209
- style=style,
210
- ).ask()
211
- if not query or not query.strip():
212
- return None
213
- query = query.strip()
214
-
215
- matches = search_templates(ready, query)
216
- if not matches:
217
- print(f"\n No templates matched '{query}'. "
218
- f"Try a broader term (e.g. 'sales', 'finance', 'support').\n")
219
- return None
220
-
221
- # Auto-switch to state 2 — show the matching templates directly.
222
- name_w = max((len(t.get("short_name", t["slug"])) for t, _ in matches),
223
- default=12) + 2
224
- tpl_choices = []
225
- for t, _score in matches:
226
- short = t.get("short_name", t["slug"])
227
- one = t.get("one_line", "")
228
- tpl_choices.append(questionary.Choice(
229
- title=f"{short.ljust(name_w)} — {one}", value=t["slug"]))
230
- tpl_choices.append(questionary.Separator())
231
- tpl_choices.append(questionary.Choice(title="← Back / new search",
232
- value="__back__"))
233
-
234
- chosen = questionary.select(
235
- f"Matches for '{query}':",
236
- choices=tpl_choices,
237
- style=style,
238
- instruction="(↑/↓ to move, Enter to select)",
239
- use_indicator=True,
240
- ).ask()
241
-
242
- if chosen is None or chosen == "__back__":
243
- return None
244
- return chosen
245
-
246
-
247
- def _prompt_template_choice_interactive() -> str:
248
- """Arrow-key TUI picker — cascading category → template selection.
249
-
250
- Uses `questionary` for arrow-key navigation. Two stages:
251
- 1. Pick a business category
252
- 2. Pick a template within that category (with 'Back' option)
253
-
254
- Loops until a template is chosen or user cancels.
255
- """
256
- import questionary
257
- from questionary import Style
258
-
259
- style = Style([
260
- ("qmark", "fg:#00d7ff bold"),
261
- ("question", "bold"),
262
- ("answer", "fg:#5fff5f bold"),
263
- ("pointer", "fg:#00d7ff bold"),
264
- ("highlighted", "fg:#00d7ff bold"),
265
- ("selected", "fg:#5fff5f"),
266
- ("separator", "fg:#6c6c6c"),
267
- ("instruction", "fg:#6c6c6c"),
268
- ])
269
-
270
- display = _grouped_templates()
271
- if not display:
272
- print(" No templates available. Reinstall create-leafmesh.")
273
- sys.exit(2)
274
-
275
- cat_to_items = dict(display)
276
-
277
- while True:
278
- # ── Step 1: pick a category ──────────────────────────────────
279
- cat_choices = []
280
- for cat, items in display:
281
- n = len(items)
282
- label = f"{cat} ({n} template{'s' if n != 1 else ''})"
283
- cat_choices.append(questionary.Choice(title=label, value=cat))
284
- cat_choices.append(questionary.Separator())
285
- cat_choices.append(questionary.Choice(title="Search by keyword…",
286
- value="__search__"))
287
- # NOTE: `value=None` causes questionary to fall back to the title
288
- # string (treats None as "unset"), which then crashes our
289
- # cat_to_items lookup with KeyError: 'Quit'. Use an explicit
290
- # sentinel string instead.
291
- cat_choices.append(questionary.Choice(title="Quit", value="__quit__"))
292
-
293
- chosen_cat = questionary.select(
294
- "Choose a business area:",
295
- choices=cat_choices,
296
- style=style,
297
- instruction="(↑/↓ to move, Enter to select)",
298
- use_indicator=True,
299
- ).ask()
300
-
301
- if chosen_cat is None or chosen_cat == "__quit__":
302
- print("\n Cancelled.\n")
303
- sys.exit(0)
304
-
305
- if chosen_cat == "__search__":
306
- slug = _interactive_search(questionary, style)
307
- if slug:
308
- return slug
309
- continue # no match / backed out → back to the category view
310
-
311
- # ── Step 2: pick a template in that category ─────────────────
312
- items = cat_to_items[chosen_cat]
313
- # Pad short_names so the one-liner column aligns nicely.
314
- name_w = max((len(t.get("short_name", t["slug"])) for t in items), default=12) + 2
315
-
316
- tpl_choices = []
317
- for t in items:
318
- short = t.get("short_name", t["slug"])
319
- one = t.get("one_line", "")
320
- label = f"{short.ljust(name_w)} — {one}"
321
- tpl_choices.append(questionary.Choice(title=label, value=t["slug"]))
322
- tpl_choices.append(questionary.Separator())
323
- tpl_choices.append(questionary.Choice(title="← Back to categories",
324
- value="__back__"))
325
- tpl_choices.append(questionary.Choice(title="Quit", value="__quit__"))
326
-
327
- chosen = questionary.select(
328
- f"Template in {chosen_cat}:",
329
- choices=tpl_choices,
330
- style=style,
331
- instruction="(↑/↓ to move, Enter to select)",
332
- use_indicator=True,
333
- ).ask()
334
-
335
- if chosen is None or chosen == "__quit__":
336
- print("\n Cancelled.\n")
337
- sys.exit(0)
338
- if chosen == "__back__":
339
- continue
340
- return chosen
341
-
342
-
343
199
  def _prompt_template_choice_fallback() -> str:
344
200
  """Numbered-list fallback for non-TTY terminals (CI, piped input)."""
345
201
  display = _grouped_templates()
@@ -423,18 +279,25 @@ def _prompt_template_choice_fallback() -> str:
423
279
  def prompt_template_choice() -> str:
424
280
  """Pick the right picker for the environment.
425
281
 
426
- On a real terminal: arrow-key cascading TUI (category → template).
427
- On CI / piped input / dumb terminals: numbered-list fallback.
282
+ On a real terminal: the full-screen Discover browser (live type-to-search,
283
+ ↑/↓ to move, Enter for a detail/confirm screen).
284
+ On CI / piped input / dumb terminals (or if prompt_toolkit is missing):
285
+ the numbered-list fallback (which has its own `/keywords` search).
428
286
  """
429
287
  is_tty = sys.stdin.isatty() and sys.stdout.isatty()
430
288
  if is_tty:
431
289
  try:
432
- return _prompt_template_choice_interactive()
290
+ from create_leafmesh.discover import discover_templates
291
+ slug = discover_templates(list_templates(include_planned=False))
292
+ if slug is None:
293
+ print("\n Cancelled.\n")
294
+ sys.exit(0)
295
+ return slug
433
296
  except KeyboardInterrupt:
434
297
  print("\n\n Cancelled.\n")
435
298
  sys.exit(0)
436
299
  except ImportError:
437
- # questionary missing → fall through to text picker
300
+ # prompt_toolkit unavailable → fall through to text picker
438
301
  pass
439
302
  return _prompt_template_choice_fallback()
440
303
 
@@ -0,0 +1,269 @@
1
+ """Full-screen, live type-to-search template browser (the "Discover" UI).
2
+
3
+ Modelled on Claude Code's `/plugin` Discover screen: a search box at the top
4
+ that filters as you type, a scrollable list of templates below (name ·
5
+ category, with a one-line summary), and a footer of key hints. Pressing Enter
6
+ on a row opens a detail screen with a confirm-to-scaffold step.
7
+
8
+ Built on prompt_toolkit, which ships as a dependency of `questionary` — so
9
+ this adds no new requirement. Falls back (in cli.py) to the numbered-list
10
+ picker when there's no TTY or prompt_toolkit is unavailable.
11
+
12
+ Public entry point: `discover_templates(templates) -> str | None`
13
+ returns the chosen template slug, or None if the user cancelled.
14
+ """
15
+
16
+ from __future__ import annotations
17
+
18
+ import textwrap
19
+ from typing import Any
20
+
21
+ from create_leafmesh.search import browser_filter
22
+
23
+
24
+ def discover_templates(
25
+ templates: list[dict[str, Any]],
26
+ *,
27
+ _input=None,
28
+ _output=None,
29
+ ) -> str | None:
30
+ """Run the full-screen Discover browser. Returns a slug or None.
31
+
32
+ Raises ImportError if prompt_toolkit isn't importable, so the caller can
33
+ fall back to the numbered picker.
34
+
35
+ `_input` / `_output` are test seams: pass a prompt_toolkit pipe input and
36
+ a DummyOutput to drive the browser headlessly.
37
+ """
38
+ from prompt_toolkit.application import Application
39
+ from prompt_toolkit.buffer import Buffer
40
+ from prompt_toolkit.filters import Condition
41
+ from prompt_toolkit.key_binding import KeyBindings
42
+ from prompt_toolkit.layout import Layout
43
+ from prompt_toolkit.layout.containers import HSplit, VSplit, Window
44
+ from prompt_toolkit.layout.controls import (
45
+ BufferControl,
46
+ FormattedTextControl,
47
+ )
48
+ from prompt_toolkit.layout.dimension import Dimension
49
+ from prompt_toolkit.styles import Style
50
+
51
+ total = len(templates)
52
+
53
+ # ── Mutable UI state ─────────────────────────────────────────────
54
+ state = {
55
+ "filtered": list(templates), # current visible templates
56
+ "sel": 0, # selected index into filtered
57
+ "offset": 0, # scroll offset (top visible item)
58
+ "mode": "list", # "list" | "detail"
59
+ "result": None, # chosen slug on exit
60
+ }
61
+
62
+ search = Buffer(multiline=False)
63
+
64
+ def _refilter(_buf=None) -> None:
65
+ state["filtered"] = browser_filter(templates, search.text)
66
+ state["sel"] = 0
67
+ state["offset"] = 0
68
+
69
+ search.on_text_changed += _refilter
70
+
71
+ is_list = Condition(lambda: state["mode"] == "list")
72
+ is_detail = Condition(lambda: state["mode"] == "detail")
73
+
74
+ def _current() -> dict[str, Any] | None:
75
+ f = state["filtered"]
76
+ if not f:
77
+ return None
78
+ return f[min(state["sel"], len(f) - 1)]
79
+
80
+ def _visible_rows() -> int:
81
+ """How many templates fit, given the terminal height (2 lines each)."""
82
+ from prompt_toolkit.application import get_app
83
+ try:
84
+ h = get_app().output.get_size().rows
85
+ except Exception:
86
+ h = 24
87
+ # header + spacer + search + spacer + footer ≈ 6 chrome lines
88
+ return max(3, (h - 6) // 2)
89
+
90
+ # ── Header ───────────────────────────────────────────────────────
91
+ def header_text():
92
+ n = len(state["filtered"])
93
+ count = f"{n}/{total}" if n != total else f"{total}"
94
+ return [("class:title", f" Discover templates "),
95
+ ("class:dim", f"({count})")]
96
+
97
+ # ── List / detail body ───────────────────────────────────────────
98
+ def body_text():
99
+ if state["mode"] == "detail":
100
+ return _detail_text()
101
+ return _list_text()
102
+
103
+ def _list_text():
104
+ f = state["filtered"]
105
+ if not f:
106
+ return [("class:dim", "\n No templates match — try fewer letters.\n")]
107
+
108
+ vis = _visible_rows()
109
+ sel = min(state["sel"], len(f) - 1)
110
+ off = state["offset"]
111
+ if sel < off:
112
+ off = sel
113
+ elif sel >= off + vis:
114
+ off = sel - vis + 1
115
+ state["offset"] = off
116
+
117
+ out: list[tuple[str, str]] = []
118
+ window = f[off:off + vis]
119
+ slug_w = max((len(t["slug"]) for t in window), default=16) + 2
120
+ for i, t in enumerate(window, start=off):
121
+ selected = (i == sel)
122
+ ptr = "❯ " if selected else " "
123
+ row_style = "class:sel" if selected else "class:row"
124
+ slug = t["slug"].ljust(slug_w)
125
+ cat = t.get("category", "")
126
+ out.append((row_style, f" {ptr}{slug}"))
127
+ out.append(("class:sel-cat" if selected else "class:cat", f"{cat}\n"))
128
+ one = t.get("one_line", "")
129
+ if len(one) > 70:
130
+ one = one[:67] + "…"
131
+ out.append(("class:dim", f" {one}\n"))
132
+ if off + vis < len(f):
133
+ out.append(("class:dim", " ↓ more below\n"))
134
+ return out
135
+
136
+ def _detail_text():
137
+ t = _current()
138
+ if t is None:
139
+ return [("", "")]
140
+ out: list[tuple[str, str]] = []
141
+ out.append(("class:title", f"\n {t.get('full_name', t['slug'])}\n"))
142
+ out.append(("class:dim", f" {t['slug']}\n\n"))
143
+ meta = []
144
+ if t.get("agent_count"):
145
+ meta.append(f"{t['agent_count']} agents")
146
+ if t.get("cron_count") not in (None, "", "0", 0):
147
+ meta.append(f"{t['cron_count']} cron")
148
+ if t.get("complexity"):
149
+ meta.append(f"complexity: {t['complexity']}")
150
+ if meta:
151
+ out.append(("class:meta", " " + " · ".join(meta) + "\n\n"))
152
+ desc = " ".join((t.get("description", "") or "").split())
153
+ for line in textwrap.wrap(desc, width=72) or [""]:
154
+ out.append(("class:row", f" {line}\n"))
155
+ if t.get("trust_lead"):
156
+ out.append(("class:dim", "\n Gates: "))
157
+ trust = " ".join(t["trust_lead"].split())
158
+ wrapped = textwrap.wrap(trust, width=64) or [""]
159
+ out.append(("class:dim", wrapped[0]))
160
+ for line in wrapped[1:]:
161
+ out.append(("class:dim", f"\n {line}"))
162
+ out.append(("", "\n"))
163
+ return out
164
+
165
+ # ── Footer ───────────────────────────────────────────────────────
166
+ def footer_text():
167
+ if state["mode"] == "detail":
168
+ return [("class:foot", " Enter "), ("class:dim", "scaffold "),
169
+ ("class:foot", "Esc "), ("class:dim", "back")]
170
+ return [("class:dim", " Type to search · "),
171
+ ("class:foot", "↑/↓ "), ("class:dim", "move · "),
172
+ ("class:foot", "Enter "), ("class:dim", "view · "),
173
+ ("class:foot", "Esc "), ("class:dim", "cancel")]
174
+
175
+ # ── Search box (label + live buffer), shown only in list mode ─────
176
+ search_line = VSplit([
177
+ Window(FormattedTextControl(lambda: [("class:prompt", " ⌕ ")]),
178
+ width=5, height=1),
179
+ Window(BufferControl(buffer=search), height=1),
180
+ ])
181
+
182
+ body = Window(content=FormattedTextControl(body_text), wrap_lines=True,
183
+ height=Dimension(min=3))
184
+
185
+ root = HSplit([
186
+ Window(FormattedTextControl(header_text), height=1),
187
+ Window(height=1, char=" "), # spacer
188
+ search_line,
189
+ Window(height=1, char=" "), # spacer
190
+ body,
191
+ Window(FormattedTextControl(footer_text), height=1),
192
+ ])
193
+
194
+ # ── Key bindings ─────────────────────────────────────────────────
195
+ kb = KeyBindings()
196
+
197
+ @kb.add("up", filter=is_list, eager=True)
198
+ @kb.add("c-p", filter=is_list, eager=True)
199
+ def _up(event):
200
+ if state["filtered"]:
201
+ state["sel"] = (state["sel"] - 1) % len(state["filtered"])
202
+
203
+ @kb.add("down", filter=is_list, eager=True)
204
+ @kb.add("c-n", filter=is_list, eager=True)
205
+ def _down(event):
206
+ if state["filtered"]:
207
+ state["sel"] = (state["sel"] + 1) % len(state["filtered"])
208
+
209
+ @kb.add("enter", filter=is_list, eager=True)
210
+ def _enter_list(event):
211
+ if _current() is not None:
212
+ state["mode"] = "detail"
213
+
214
+ @kb.add("enter", filter=is_detail, eager=True)
215
+ def _enter_detail(event):
216
+ t = _current()
217
+ if t is not None:
218
+ state["result"] = t["slug"]
219
+ event.app.exit()
220
+
221
+ @kb.add("escape", filter=is_detail, eager=True)
222
+ def _esc_detail(event):
223
+ state["mode"] = "list"
224
+
225
+ @kb.add("escape", filter=is_list, eager=True)
226
+ def _esc_list(event):
227
+ state["result"] = None
228
+ event.app.exit()
229
+
230
+ # In detail mode, swallow any other key so typing doesn't edit the query.
231
+ @kb.add("<any>", filter=is_detail, eager=True)
232
+ def _swallow(event):
233
+ pass
234
+
235
+ @kb.add("c-c")
236
+ @kb.add("c-q")
237
+ def _cancel(event):
238
+ state["result"] = None
239
+ event.app.exit()
240
+
241
+ style = Style([
242
+ ("title", "bold"),
243
+ ("dim", "fg:#6c6c6c"),
244
+ ("prompt", "fg:#00d7ff bold"),
245
+ ("row", ""),
246
+ ("cat", "fg:#6c6c6c"),
247
+ ("sel", "fg:#00d7ff bold"),
248
+ ("sel-cat", "fg:#00d7ff"),
249
+ ("meta", "fg:#5fafff"),
250
+ ("foot", "fg:#5fff5f bold"),
251
+ ])
252
+
253
+ app_kwargs = {}
254
+ if _input is not None:
255
+ app_kwargs["input"] = _input
256
+ if _output is not None:
257
+ app_kwargs["output"] = _output
258
+
259
+ app = Application(
260
+ layout=Layout(root, focused_element=search_line),
261
+ key_bindings=kb,
262
+ style=style,
263
+ full_screen=True,
264
+ mouse_support=False,
265
+ **app_kwargs,
266
+ )
267
+ _refilter()
268
+ app.run()
269
+ return state["result"]
@@ -139,6 +139,55 @@ def score_template(t: dict[str, Any], query: str) -> float:
139
139
  return score
140
140
 
141
141
 
142
+ def browser_filter(
143
+ templates: list[dict[str, Any]],
144
+ query: str,
145
+ ) -> list[dict[str, Any]]:
146
+ """Lenient, responsive filter for the live Discover browser.
147
+
148
+ Unlike `search_templates` (which thresholds for "best answer" intent),
149
+ this is for incremental typing: an empty query returns everything in the
150
+ given display order, and a partial query surfaces anything whose text
151
+ contains the typed tokens as substrings — so "proc" immediately reveals
152
+ procurement-ops — ranked by relevance (fuzzy still helps with typos).
153
+ """
154
+ q = (query or "").strip().lower()
155
+ if not q:
156
+ return list(templates)
157
+
158
+ q_tokens = _tokens(q)
159
+ q_compact = q.replace(" ", "")
160
+ ranked: list[tuple[dict[str, Any], int, float, str]] = []
161
+ for t in templates:
162
+ primary_text, secondary_text, _ = _corpus(t)
163
+ hay = primary_text + " " + secondary_text
164
+ # Substring inclusion: every typed token appears somewhere.
165
+ substr = all(tok in hay for tok in q_tokens) if q_tokens else False
166
+ s = score_template(t, q)
167
+ if not (substr or s > 0):
168
+ continue
169
+ # Tier the result so live typing feels right. A name prefix (the query
170
+ # starts the slug or a name word) is the strongest signal, then a
171
+ # keyword/synonym prefix, then a mid-word substring, then a fuzzy-only
172
+ # (typo) hit. Within a tier, higher relevance score first.
173
+ slug = t.get("slug", "")
174
+ name_text = f"{slug} {t.get('short_name', '')} {t.get('full_name', '')}"
175
+ name_prefix = (slug.startswith(q_compact)
176
+ or any(tok.startswith(q) for tok in _tokens(name_text)))
177
+ kw_prefix = any(tok.startswith(q) for tok in _tokens(primary_text))
178
+ if name_prefix:
179
+ tier = 0
180
+ elif kw_prefix:
181
+ tier = 1
182
+ elif substr:
183
+ tier = 2
184
+ else:
185
+ tier = 3
186
+ ranked.append((t, tier, s, slug))
187
+ ranked.sort(key=lambda r: (r[1], -r[2], r[3]))
188
+ return [t for t, _tier, _s, _slug in ranked]
189
+
190
+
142
191
  def search_templates(
143
192
  templates: list[dict[str, Any]],
144
193
  query: str,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: create-leafmesh
3
- Version: 2.6.2
3
+ Version: 2.6.3
4
4
  Summary: Project scaffolding + cloud-deploy tool for LeafMesh
5
5
  License-Expression: MIT
6
6
  Requires-Python: >=3.10
@@ -5,6 +5,7 @@ create_leafmesh/__init__.py
5
5
  create_leafmesh/cli.py
6
6
  create_leafmesh/create.py
7
7
  create_leafmesh/deploy.py
8
+ create_leafmesh/discover.py
8
9
  create_leafmesh/search.py
9
10
  create_leafmesh.egg-info/PKG-INFO
10
11
  create_leafmesh.egg-info/SOURCES.txt
@@ -707,4 +708,5 @@ create_leafmesh/templates/warehouse-supply-chain/tests/__init__.py
707
708
  create_leafmesh/templates/warehouse-supply-chain/tests/conftest.py
708
709
  create_leafmesh/templates/warehouse-supply-chain/tests/test_agent_logic.py
709
710
  create_leafmesh/templates/warehouse-supply-chain/tests/test_config_shape.py
711
+ tests/test_discover.py
710
712
  tests/test_search.py
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "create-leafmesh"
7
- version = "2.6.2"
7
+ version = "2.6.3"
8
8
  description = "Project scaffolding + cloud-deploy tool for LeafMesh"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -0,0 +1,66 @@
1
+ """Headless drive of the full-screen Discover browser (create_leafmesh.discover).
2
+
3
+ prompt_toolkit ships a pipe-input + DummyOutput test seam; discover_templates
4
+ accepts them via `_input`/`_output`, so we can script keystrokes and assert the
5
+ returned slug without a real terminal.
6
+
7
+ Key bytes: "\\r" = Enter, "\\x1b[B" = Down, "\\x1b[A" = Up, "\\x1b" = Esc,
8
+ "\\x03" = Ctrl-C.
9
+ """
10
+ from __future__ import annotations
11
+
12
+ import pytest
13
+
14
+ pytest.importorskip("prompt_toolkit")
15
+
16
+ from prompt_toolkit.output import DummyOutput # noqa: E402
17
+
18
+ try:
19
+ from prompt_toolkit.input import create_pipe_input
20
+ except ImportError: # older prompt_toolkit
21
+ from prompt_toolkit.input.defaults import create_pipe_input
22
+
23
+ from create_leafmesh.create import list_templates # noqa: E402
24
+ from create_leafmesh.discover import discover_templates # noqa: E402
25
+
26
+
27
+ def _run(keys: str):
28
+ templates = list_templates(include_planned=False)
29
+ cm = create_pipe_input()
30
+ if hasattr(cm, "__enter__"):
31
+ with cm as inp:
32
+ inp.send_text(keys)
33
+ return discover_templates(templates, _input=inp, _output=DummyOutput())
34
+ cm.send_text(keys)
35
+ return discover_templates(templates, _input=cm, _output=DummyOutput())
36
+
37
+
38
+ def test_search_then_select():
39
+ # type 'proc' -> top is procurement-ops; Enter (detail), Enter (scaffold)
40
+ assert _run("proc\r\r") == "procurement-ops"
41
+
42
+
43
+ def test_navigate_down_then_select():
44
+ # 'cust' lists customer-success then customer-support; Down picks the 2nd
45
+ assert _run("cust\x1b[B\r\r") == "customer-support"
46
+
47
+
48
+ def test_exactish_query_select():
49
+ assert _run("warehouse\r\r") == "warehouse-supply-chain"
50
+
51
+
52
+ def test_detail_back_then_reselect():
53
+ # 'fin' -> detail -> Esc back to list -> Enter detail -> Enter scaffold
54
+ assert _run("fin\r\x1b\r\r") == "finance-ops"
55
+
56
+
57
+ def test_escape_cancels():
58
+ assert _run("\x1b") is None
59
+
60
+
61
+ def test_ctrl_c_cancels():
62
+ assert _run("proc\x03") is None
63
+
64
+
65
+ def test_no_match_then_cancel():
66
+ assert _run("zzzznope\x03") is None
@@ -10,7 +10,11 @@ from __future__ import annotations
10
10
  import pytest
11
11
 
12
12
  from create_leafmesh.create import list_templates
13
- from create_leafmesh.search import score_template, search_templates
13
+ from create_leafmesh.search import (
14
+ browser_filter,
15
+ score_template,
16
+ search_templates,
17
+ )
14
18
 
15
19
 
16
20
  @pytest.fixture(scope="module")
@@ -128,6 +132,32 @@ def test_score_is_monotonic_for_relevance(templates):
128
132
  score_template(fin, "cold email outreach")
129
133
 
130
134
 
135
+ # ── Browser filter (live Discover typing) ──
136
+
137
+ def test_browser_filter_empty_returns_all(templates):
138
+ assert len(browser_filter(templates, "")) == len(templates)
139
+
140
+
141
+ @pytest.mark.parametrize("query,expected_top", [
142
+ ("proc", "procurement-ops"),
143
+ ("fin", "finance-ops"),
144
+ ("ware", "warehouse-supply-chain"),
145
+ ("mark", "marketing-ops"),
146
+ ("recru", "recruiting-ops"),
147
+ ("bench", "bench-management"),
148
+ ("qual", "quality-yield"),
149
+ ])
150
+ def test_browser_filter_name_prefix_ranks_first(templates, query, expected_top):
151
+ # A name/slug prefix must beat a keyword-prefix or fuzzy hit while typing.
152
+ res = browser_filter(templates, query)
153
+ assert res, f"{query!r} returned nothing"
154
+ assert res[0]["slug"] == expected_top, [t["slug"] for t in res[:3]]
155
+
156
+
157
+ def test_browser_filter_unknown_returns_empty(templates):
158
+ assert browser_filter(templates, "zzzznope") == []
159
+
160
+
131
161
  # ── CLI surface ──
132
162
 
133
163
  def test_cli_search_exit_codes(capsys):