empathy-framework 4.6.6__py3-none-any.whl → 4.7.1__py3-none-any.whl

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 (273) hide show
  1. empathy_framework-4.7.1.dist-info/METADATA +690 -0
  2. empathy_framework-4.7.1.dist-info/RECORD +379 -0
  3. {empathy_framework-4.6.6.dist-info → empathy_framework-4.7.1.dist-info}/top_level.txt +1 -2
  4. empathy_healthcare_plugin/monitors/monitoring/__init__.py +9 -9
  5. empathy_llm_toolkit/agent_factory/__init__.py +6 -6
  6. empathy_llm_toolkit/agent_factory/adapters/wizard_adapter.py +7 -10
  7. empathy_llm_toolkit/agents_md/__init__.py +22 -0
  8. empathy_llm_toolkit/agents_md/loader.py +218 -0
  9. empathy_llm_toolkit/agents_md/parser.py +271 -0
  10. empathy_llm_toolkit/agents_md/registry.py +307 -0
  11. empathy_llm_toolkit/commands/__init__.py +51 -0
  12. empathy_llm_toolkit/commands/context.py +375 -0
  13. empathy_llm_toolkit/commands/loader.py +301 -0
  14. empathy_llm_toolkit/commands/models.py +231 -0
  15. empathy_llm_toolkit/commands/parser.py +371 -0
  16. empathy_llm_toolkit/commands/registry.py +429 -0
  17. empathy_llm_toolkit/config/__init__.py +8 -8
  18. empathy_llm_toolkit/config/unified.py +3 -7
  19. empathy_llm_toolkit/context/__init__.py +22 -0
  20. empathy_llm_toolkit/context/compaction.py +455 -0
  21. empathy_llm_toolkit/context/manager.py +434 -0
  22. empathy_llm_toolkit/hooks/__init__.py +24 -0
  23. empathy_llm_toolkit/hooks/config.py +306 -0
  24. empathy_llm_toolkit/hooks/executor.py +289 -0
  25. empathy_llm_toolkit/hooks/registry.py +302 -0
  26. empathy_llm_toolkit/hooks/scripts/__init__.py +39 -0
  27. empathy_llm_toolkit/hooks/scripts/evaluate_session.py +201 -0
  28. empathy_llm_toolkit/hooks/scripts/first_time_init.py +285 -0
  29. empathy_llm_toolkit/hooks/scripts/pre_compact.py +207 -0
  30. empathy_llm_toolkit/hooks/scripts/session_end.py +183 -0
  31. empathy_llm_toolkit/hooks/scripts/session_start.py +163 -0
  32. empathy_llm_toolkit/hooks/scripts/suggest_compact.py +225 -0
  33. empathy_llm_toolkit/learning/__init__.py +30 -0
  34. empathy_llm_toolkit/learning/evaluator.py +438 -0
  35. empathy_llm_toolkit/learning/extractor.py +514 -0
  36. empathy_llm_toolkit/learning/storage.py +560 -0
  37. empathy_llm_toolkit/providers.py +4 -11
  38. empathy_llm_toolkit/security/__init__.py +17 -17
  39. empathy_llm_toolkit/utils/tokens.py +2 -5
  40. empathy_os/__init__.py +202 -70
  41. empathy_os/cache_monitor.py +5 -3
  42. empathy_os/cli/__init__.py +11 -55
  43. empathy_os/cli/__main__.py +29 -15
  44. empathy_os/cli/commands/inspection.py +21 -12
  45. empathy_os/cli/commands/memory.py +4 -12
  46. empathy_os/cli/commands/profiling.py +198 -0
  47. empathy_os/cli/commands/utilities.py +27 -7
  48. empathy_os/cli.py +28 -57
  49. empathy_os/cli_unified.py +525 -1164
  50. empathy_os/cost_tracker.py +9 -3
  51. empathy_os/dashboard/server.py +200 -2
  52. empathy_os/hot_reload/__init__.py +7 -7
  53. empathy_os/hot_reload/config.py +6 -7
  54. empathy_os/hot_reload/integration.py +35 -35
  55. empathy_os/hot_reload/reloader.py +57 -57
  56. empathy_os/hot_reload/watcher.py +28 -28
  57. empathy_os/hot_reload/websocket.py +2 -2
  58. empathy_os/memory/__init__.py +11 -4
  59. empathy_os/memory/claude_memory.py +1 -1
  60. empathy_os/memory/cross_session.py +8 -12
  61. empathy_os/memory/edges.py +6 -6
  62. empathy_os/memory/file_session.py +770 -0
  63. empathy_os/memory/graph.py +30 -30
  64. empathy_os/memory/nodes.py +6 -6
  65. empathy_os/memory/short_term.py +15 -9
  66. empathy_os/memory/unified.py +606 -140
  67. empathy_os/meta_workflows/agent_creator.py +3 -9
  68. empathy_os/meta_workflows/cli_meta_workflows.py +113 -53
  69. empathy_os/meta_workflows/form_engine.py +6 -18
  70. empathy_os/meta_workflows/intent_detector.py +64 -24
  71. empathy_os/meta_workflows/models.py +3 -1
  72. empathy_os/meta_workflows/pattern_learner.py +13 -31
  73. empathy_os/meta_workflows/plan_generator.py +55 -47
  74. empathy_os/meta_workflows/session_context.py +2 -3
  75. empathy_os/meta_workflows/workflow.py +20 -51
  76. empathy_os/models/cli.py +2 -2
  77. empathy_os/models/tasks.py +1 -2
  78. empathy_os/models/telemetry.py +4 -1
  79. empathy_os/models/token_estimator.py +3 -1
  80. empathy_os/monitoring/alerts.py +938 -9
  81. empathy_os/monitoring/alerts_cli.py +346 -183
  82. empathy_os/orchestration/execution_strategies.py +12 -29
  83. empathy_os/orchestration/pattern_learner.py +20 -26
  84. empathy_os/orchestration/real_tools.py +6 -15
  85. empathy_os/platform_utils.py +2 -1
  86. empathy_os/plugins/__init__.py +2 -2
  87. empathy_os/plugins/base.py +64 -64
  88. empathy_os/plugins/registry.py +32 -32
  89. empathy_os/project_index/index.py +49 -15
  90. empathy_os/project_index/models.py +1 -2
  91. empathy_os/project_index/reports.py +1 -1
  92. empathy_os/project_index/scanner.py +1 -0
  93. empathy_os/redis_memory.py +10 -7
  94. empathy_os/resilience/__init__.py +1 -1
  95. empathy_os/resilience/health.py +10 -10
  96. empathy_os/routing/__init__.py +7 -7
  97. empathy_os/routing/chain_executor.py +37 -37
  98. empathy_os/routing/classifier.py +36 -36
  99. empathy_os/routing/smart_router.py +40 -40
  100. empathy_os/routing/{wizard_registry.py → workflow_registry.py} +47 -47
  101. empathy_os/scaffolding/__init__.py +8 -8
  102. empathy_os/scaffolding/__main__.py +1 -1
  103. empathy_os/scaffolding/cli.py +28 -28
  104. empathy_os/socratic/__init__.py +3 -19
  105. empathy_os/socratic/ab_testing.py +25 -36
  106. empathy_os/socratic/blueprint.py +38 -38
  107. empathy_os/socratic/cli.py +34 -20
  108. empathy_os/socratic/collaboration.py +30 -28
  109. empathy_os/socratic/domain_templates.py +9 -1
  110. empathy_os/socratic/embeddings.py +17 -13
  111. empathy_os/socratic/engine.py +135 -70
  112. empathy_os/socratic/explainer.py +70 -60
  113. empathy_os/socratic/feedback.py +24 -19
  114. empathy_os/socratic/forms.py +15 -10
  115. empathy_os/socratic/generator.py +51 -35
  116. empathy_os/socratic/llm_analyzer.py +25 -23
  117. empathy_os/socratic/mcp_server.py +99 -159
  118. empathy_os/socratic/session.py +19 -13
  119. empathy_os/socratic/storage.py +98 -67
  120. empathy_os/socratic/success.py +38 -27
  121. empathy_os/socratic/visual_editor.py +51 -39
  122. empathy_os/socratic/web_ui.py +99 -66
  123. empathy_os/telemetry/cli.py +3 -1
  124. empathy_os/telemetry/usage_tracker.py +1 -3
  125. empathy_os/test_generator/__init__.py +3 -3
  126. empathy_os/test_generator/cli.py +28 -28
  127. empathy_os/test_generator/generator.py +64 -66
  128. empathy_os/test_generator/risk_analyzer.py +11 -11
  129. empathy_os/vscode_bridge 2.py +173 -0
  130. empathy_os/vscode_bridge.py +173 -0
  131. empathy_os/workflows/__init__.py +212 -120
  132. empathy_os/workflows/batch_processing.py +8 -24
  133. empathy_os/workflows/bug_predict.py +1 -1
  134. empathy_os/workflows/code_review.py +20 -5
  135. empathy_os/workflows/code_review_pipeline.py +13 -8
  136. empathy_os/workflows/keyboard_shortcuts/workflow.py +6 -2
  137. empathy_os/workflows/manage_documentation.py +1 -0
  138. empathy_os/workflows/orchestrated_health_check.py +6 -11
  139. empathy_os/workflows/orchestrated_release_prep.py +3 -3
  140. empathy_os/workflows/pr_review.py +18 -10
  141. empathy_os/workflows/progressive/README 2.md +454 -0
  142. empathy_os/workflows/progressive/__init__ 2.py +92 -0
  143. empathy_os/workflows/progressive/__init__.py +2 -12
  144. empathy_os/workflows/progressive/cli 2.py +242 -0
  145. empathy_os/workflows/progressive/cli.py +14 -37
  146. empathy_os/workflows/progressive/core 2.py +488 -0
  147. empathy_os/workflows/progressive/core.py +12 -12
  148. empathy_os/workflows/progressive/orchestrator 2.py +701 -0
  149. empathy_os/workflows/progressive/orchestrator.py +166 -144
  150. empathy_os/workflows/progressive/reports 2.py +528 -0
  151. empathy_os/workflows/progressive/reports.py +22 -31
  152. empathy_os/workflows/progressive/telemetry 2.py +280 -0
  153. empathy_os/workflows/progressive/telemetry.py +8 -14
  154. empathy_os/workflows/progressive/test_gen 2.py +514 -0
  155. empathy_os/workflows/progressive/test_gen.py +29 -48
  156. empathy_os/workflows/progressive/workflow 2.py +628 -0
  157. empathy_os/workflows/progressive/workflow.py +31 -70
  158. empathy_os/workflows/release_prep.py +21 -6
  159. empathy_os/workflows/release_prep_crew.py +1 -0
  160. empathy_os/workflows/secure_release.py +13 -6
  161. empathy_os/workflows/security_audit.py +8 -3
  162. empathy_os/workflows/test_coverage_boost_crew.py +3 -2
  163. empathy_os/workflows/test_maintenance_crew.py +1 -0
  164. empathy_os/workflows/test_runner.py +16 -12
  165. empathy_software_plugin/SOFTWARE_PLUGIN_README.md +25 -703
  166. empathy_software_plugin/cli.py +0 -122
  167. patterns/README.md +119 -0
  168. patterns/__init__.py +95 -0
  169. patterns/behavior.py +298 -0
  170. patterns/code_review_memory.json +441 -0
  171. patterns/core.py +97 -0
  172. patterns/debugging.json +3763 -0
  173. patterns/empathy.py +268 -0
  174. patterns/health_check_memory.json +505 -0
  175. patterns/input.py +161 -0
  176. patterns/memory_graph.json +8 -0
  177. patterns/refactoring_memory.json +1113 -0
  178. patterns/registry.py +663 -0
  179. patterns/security_memory.json +8 -0
  180. patterns/structural.py +415 -0
  181. patterns/validation.py +194 -0
  182. coach_wizards/__init__.py +0 -45
  183. coach_wizards/accessibility_wizard.py +0 -91
  184. coach_wizards/api_wizard.py +0 -91
  185. coach_wizards/base_wizard.py +0 -209
  186. coach_wizards/cicd_wizard.py +0 -91
  187. coach_wizards/code_reviewer_README.md +0 -60
  188. coach_wizards/code_reviewer_wizard.py +0 -180
  189. coach_wizards/compliance_wizard.py +0 -91
  190. coach_wizards/database_wizard.py +0 -91
  191. coach_wizards/debugging_wizard.py +0 -91
  192. coach_wizards/documentation_wizard.py +0 -91
  193. coach_wizards/generate_wizards.py +0 -347
  194. coach_wizards/localization_wizard.py +0 -173
  195. coach_wizards/migration_wizard.py +0 -91
  196. coach_wizards/monitoring_wizard.py +0 -91
  197. coach_wizards/observability_wizard.py +0 -91
  198. coach_wizards/performance_wizard.py +0 -91
  199. coach_wizards/prompt_engineering_wizard.py +0 -661
  200. coach_wizards/refactoring_wizard.py +0 -91
  201. coach_wizards/scaling_wizard.py +0 -90
  202. coach_wizards/security_wizard.py +0 -92
  203. coach_wizards/testing_wizard.py +0 -91
  204. empathy_framework-4.6.6.dist-info/METADATA +0 -1597
  205. empathy_framework-4.6.6.dist-info/RECORD +0 -410
  206. empathy_llm_toolkit/wizards/__init__.py +0 -43
  207. empathy_llm_toolkit/wizards/base_wizard.py +0 -364
  208. empathy_llm_toolkit/wizards/customer_support_wizard.py +0 -190
  209. empathy_llm_toolkit/wizards/healthcare_wizard.py +0 -378
  210. empathy_llm_toolkit/wizards/patient_assessment_README.md +0 -64
  211. empathy_llm_toolkit/wizards/patient_assessment_wizard.py +0 -193
  212. empathy_llm_toolkit/wizards/technology_wizard.py +0 -209
  213. empathy_os/wizard_factory_cli.py +0 -170
  214. empathy_software_plugin/wizards/__init__.py +0 -42
  215. empathy_software_plugin/wizards/advanced_debugging_wizard.py +0 -395
  216. empathy_software_plugin/wizards/agent_orchestration_wizard.py +0 -511
  217. empathy_software_plugin/wizards/ai_collaboration_wizard.py +0 -503
  218. empathy_software_plugin/wizards/ai_context_wizard.py +0 -441
  219. empathy_software_plugin/wizards/ai_documentation_wizard.py +0 -503
  220. empathy_software_plugin/wizards/base_wizard.py +0 -288
  221. empathy_software_plugin/wizards/book_chapter_wizard.py +0 -519
  222. empathy_software_plugin/wizards/code_review_wizard.py +0 -604
  223. empathy_software_plugin/wizards/debugging/__init__.py +0 -50
  224. empathy_software_plugin/wizards/debugging/bug_risk_analyzer.py +0 -414
  225. empathy_software_plugin/wizards/debugging/config_loaders.py +0 -446
  226. empathy_software_plugin/wizards/debugging/fix_applier.py +0 -469
  227. empathy_software_plugin/wizards/debugging/language_patterns.py +0 -385
  228. empathy_software_plugin/wizards/debugging/linter_parsers.py +0 -470
  229. empathy_software_plugin/wizards/debugging/verification.py +0 -369
  230. empathy_software_plugin/wizards/enhanced_testing_wizard.py +0 -537
  231. empathy_software_plugin/wizards/memory_enhanced_debugging_wizard.py +0 -816
  232. empathy_software_plugin/wizards/multi_model_wizard.py +0 -501
  233. empathy_software_plugin/wizards/pattern_extraction_wizard.py +0 -422
  234. empathy_software_plugin/wizards/pattern_retriever_wizard.py +0 -400
  235. empathy_software_plugin/wizards/performance/__init__.py +0 -9
  236. empathy_software_plugin/wizards/performance/bottleneck_detector.py +0 -221
  237. empathy_software_plugin/wizards/performance/profiler_parsers.py +0 -278
  238. empathy_software_plugin/wizards/performance/trajectory_analyzer.py +0 -429
  239. empathy_software_plugin/wizards/performance_profiling_wizard.py +0 -305
  240. empathy_software_plugin/wizards/prompt_engineering_wizard.py +0 -425
  241. empathy_software_plugin/wizards/rag_pattern_wizard.py +0 -461
  242. empathy_software_plugin/wizards/security/__init__.py +0 -32
  243. empathy_software_plugin/wizards/security/exploit_analyzer.py +0 -290
  244. empathy_software_plugin/wizards/security/owasp_patterns.py +0 -241
  245. empathy_software_plugin/wizards/security/vulnerability_scanner.py +0 -604
  246. empathy_software_plugin/wizards/security_analysis_wizard.py +0 -322
  247. empathy_software_plugin/wizards/security_learning_wizard.py +0 -740
  248. empathy_software_plugin/wizards/tech_debt_wizard.py +0 -726
  249. empathy_software_plugin/wizards/testing/__init__.py +0 -27
  250. empathy_software_plugin/wizards/testing/coverage_analyzer.py +0 -459
  251. empathy_software_plugin/wizards/testing/quality_analyzer.py +0 -525
  252. empathy_software_plugin/wizards/testing/test_suggester.py +0 -533
  253. empathy_software_plugin/wizards/testing_wizard.py +0 -274
  254. wizards/__init__.py +0 -82
  255. wizards/admission_assessment_wizard.py +0 -644
  256. wizards/care_plan.py +0 -321
  257. wizards/clinical_assessment.py +0 -769
  258. wizards/discharge_planning.py +0 -77
  259. wizards/discharge_summary_wizard.py +0 -468
  260. wizards/dosage_calculation.py +0 -497
  261. wizards/incident_report_wizard.py +0 -454
  262. wizards/medication_reconciliation.py +0 -85
  263. wizards/nursing_assessment.py +0 -171
  264. wizards/patient_education.py +0 -654
  265. wizards/quality_improvement.py +0 -705
  266. wizards/sbar_report.py +0 -324
  267. wizards/sbar_wizard.py +0 -608
  268. wizards/shift_handoff_wizard.py +0 -535
  269. wizards/soap_note_wizard.py +0 -679
  270. wizards/treatment_plan.py +0 -15
  271. {empathy_framework-4.6.6.dist-info → empathy_framework-4.7.1.dist-info}/WHEEL +0 -0
  272. {empathy_framework-4.6.6.dist-info → empathy_framework-4.7.1.dist-info}/entry_points.txt +0 -0
  273. {empathy_framework-4.6.6.dist-info → empathy_framework-4.7.1.dist-info}/licenses/LICENSE +0 -0
@@ -1,1597 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: empathy-framework
3
- Version: 4.6.6
4
- Summary: AI collaboration framework with real LLM agent execution, AskUserQuestion tool integration, Socratic agent generation, progressive tier escalation (70-85% cost savings), meta-orchestration, dynamic agent composition (6 patterns), intelligent caching (85% hit rate), semantic workflow discovery, visual workflow editor, MCP integration for Claude Code, and multi-agent orchestration.
5
- Author-email: Patrick Roebuck <admin@smartaimemory.com>
6
- Maintainer-email: Smart-AI-Memory <admin@smartaimemory.com>
7
- License: # Fair Source License, version 0.9
8
-
9
- **Copyright © 2025 Deep Study AI, LLC**
10
-
11
- ## Grant of Rights
12
-
13
- **Licensor:** Deep Study AI, LLC
14
- **Licensed Work:** Empathy
15
- **Change Date:** January 1, 2029 (4 years from first release)
16
- **Change License:** Apache License 2.0
17
-
18
- ---
19
-
20
- ## Terms
21
-
22
- ### Grant of Use
23
-
24
- Subject to the conditions below, Licensor grants you a non-exclusive, worldwide, royalty-free license to:
25
-
26
- - Use the Licensed Work
27
- - Modify the Licensed Work
28
- - Create derivative works
29
- - Distribute copies (subject to restrictions)
30
-
31
- ### Usage Limits - Free Tier
32
-
33
- You may use the Licensed Work **free of charge** if you meet ANY of these conditions:
34
-
35
- 1. **Educational Use:** You are a student or educator using the Licensed Work for educational purposes
36
- 2. **Small Business:** Your organization has **5 or fewer total employees**
37
- 3. **Personal/Research:** You are using the Licensed Work for personal projects or academic research
38
- 4. **Evaluation:** You are evaluating the Licensed Work for up to 30 days
39
-
40
- ### Usage Limits - Commercial License Required
41
-
42
- A **Commercial License is REQUIRED** if:
43
-
44
- 1. Your organization has **6 or more employees**, AND
45
- 2. You are using the Licensed Work in a production environment, OR
46
- 3. You are using the Licensed Work to provide services to third parties
47
-
48
- **Commercial License:** $99 USD per developer per year
49
-
50
- - "Developer" means any employee, contractor, or agent who uses, modifies, or deploys the Licensed Work
51
- - One license covers all environments (development, staging, production, CI/CD)
52
- - License includes updates and support
53
- - Purchase at: https://smartaimemory.com/empathy-framework/pricing
54
-
55
- ### Restrictions
56
-
57
- You may NOT:
58
-
59
- 1. **Remove or modify** licensing, copyright notices, or attribution
60
- 2. **Circumvent** the usage limits or commercial license requirements
61
- 3. **Offer as a managed service** without a separate reseller agreement
62
- 4. **Sublicense, sell, or rent** the Licensed Work to third parties
63
- 5. **Use the Licensed Work** in violation of applicable laws
64
-
65
- ### Source Code Availability
66
-
67
- The source code for the Licensed Work is available at:
68
- https://github.com/Smart-AI-Memory/empathy
69
-
70
- You may view, inspect, and audit the source code for:
71
- - Security review
72
- - Compliance verification
73
- - Understanding implementation
74
- - Creating derivative works (subject to this license)
75
-
76
- ### Attribution
77
-
78
- If you distribute the Licensed Work or derivative works, you must:
79
-
80
- 1. Include this license file
81
- 2. Provide attribution to "Deep Study AI, LLC - Empathy"
82
- 3. Include a link to https://github.com/Smart-AI-Memory/empathy
83
-
84
- ### Warranty Disclaimer
85
-
86
- THE LICENSED WORK IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT.
87
-
88
- ### Liability Limitation
89
-
90
- IN NO EVENT SHALL LICENSOR BE LIABLE FOR ANY CLAIM, DAMAGES, OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT, OR OTHERWISE, ARISING FROM, OUT OF, OR IN CONNECTION WITH THE LICENSED WORK.
91
-
92
- ### Change Date Conversion
93
-
94
- On the Change Date (January 1, 2029), this license automatically converts to the Change License (Apache License 2.0), and all restrictions in this Fair Source License no longer apply.
95
-
96
- **Rationale:** After 4 years, the Licensed Work becomes fully open source, allowing maximum community benefit while protecting Licensor's commercial interests during the critical growth period.
97
-
98
- ### Verification Rights
99
-
100
- Licensor reserves the right to:
101
-
102
- 1. Request verification of compliance with usage limits
103
- 2. Audit use of the Licensed Work with reasonable notice
104
- 3. Terminate licenses for violations after 30-day cure period
105
-
106
- ### Commercial License Purchase
107
-
108
- To purchase a Commercial License:
109
-
110
- 1. Visit: https://smartaimemory.com/empathy-framework/pricing
111
- 2. Email: admin@smartaimemory.com
112
- 3. Complete order form and payment
113
- 4. Receive license key and invoice
114
-
115
- Volume discounts available for teams of 20+ developers.
116
-
117
- ### Definitions
118
-
119
- - **Employee:** Any W-2 employee, 1099 contractor working >20 hours/week, or intern
120
- - **Production Environment:** Any environment serving end users or customers
121
- - **Developer:** Any person who uses, modifies, or deploys the Licensed Work
122
- - **Organization:** The legal entity employing you, or yourself if self-employed
123
-
124
- ### Questions?
125
-
126
- For licensing questions, contact: licensing@smartaimemory.com
127
-
128
- ---
129
-
130
- ## Why Fair Source?
131
-
132
- This license balances:
133
-
134
- ✅ **Free for small teams** - Students, educators, and small businesses (≤5 employees) use free forever
135
- ✅ **Source code visibility** - Review code for security, compliance, learning
136
- ✅ **Commercial sustainability** - Larger organizations pay to fund development
137
- ✅ **Future open source** - Automatically becomes Apache 2.0 in 4 years
138
-
139
- We believe software should be inspectable and accessible while ensuring sustainable development.
140
-
141
- ---
142
-
143
- **Version:** 0.9
144
- **Last Updated:** November 7, 2025
145
- **Effective Date:** January 1, 2025
146
-
147
- Project-URL: Homepage, https://www.smartaimemory.com
148
- Project-URL: Documentation, https://www.smartaimemory.com/framework-docs/
149
- Project-URL: Getting Started, https://www.smartaimemory.com/framework-docs/tutorials/quickstart/
150
- Project-URL: FAQ, https://www.smartaimemory.com/framework-docs/reference/FAQ/
151
- Project-URL: Book, https://www.smartaimemory.com/book
152
- Project-URL: Repository, https://github.com/Smart-AI-Memory/empathy-framework
153
- Project-URL: Issues, https://github.com/Smart-AI-Memory/empathy-framework/issues
154
- Project-URL: Discussions, https://github.com/Smart-AI-Memory/empathy-framework/discussions
155
- Project-URL: Changelog, https://github.com/Smart-AI-Memory/empathy-framework/blob/main/CHANGELOG.md
156
- Keywords: ai,collaboration,empathy,anticipatory-ai,systems-thinking,llm,claude,memdocs,level-5-ai,code-inspection,static-analysis,code-quality,sarif,github-actions,developer-tools
157
- Classifier: Development Status :: 4 - Beta
158
- Classifier: Intended Audience :: Developers
159
- Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
160
- Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
161
- Classifier: Programming Language :: Python :: 3
162
- Classifier: Programming Language :: Python :: 3.10
163
- Classifier: Programming Language :: Python :: 3.11
164
- Classifier: Programming Language :: Python :: 3.12
165
- Classifier: Programming Language :: Python :: 3.13
166
- Classifier: Operating System :: OS Independent
167
- Requires-Python: >=3.10
168
- Description-Content-Type: text/markdown
169
- License-File: LICENSE
170
- Requires-Dist: pydantic<3.0.0,>=2.0.0
171
- Requires-Dist: typing-extensions<5.0.0,>=4.0.0
172
- Requires-Dist: python-dotenv<2.0.0,>=1.0.0
173
- Requires-Dist: structlog<25.0.0,>=23.0.0
174
- Requires-Dist: defusedxml<1.0.0,>=0.7.0
175
- Requires-Dist: rich<14.0.0,>=13.0.0
176
- Requires-Dist: typer<1.0.0,>=0.9.0
177
- Requires-Dist: pyyaml<7.0,>=6.0
178
- Requires-Dist: anthropic<1.0.0,>=0.25.0
179
- Provides-Extra: anthropic
180
- Requires-Dist: anthropic<1.0.0,>=0.25.0; extra == "anthropic"
181
- Provides-Extra: openai
182
- Requires-Dist: openai<2.0.0,>=1.12.0; extra == "openai"
183
- Provides-Extra: google
184
- Requires-Dist: google-generativeai<1.0.0,>=0.3.0; extra == "google"
185
- Provides-Extra: llm
186
- Requires-Dist: anthropic<1.0.0,>=0.25.0; extra == "llm"
187
- Requires-Dist: openai<2.0.0,>=1.12.0; extra == "llm"
188
- Requires-Dist: google-generativeai<1.0.0,>=0.3.0; extra == "llm"
189
- Provides-Extra: memdocs
190
- Requires-Dist: memdocs>=1.0.0; extra == "memdocs"
191
- Provides-Extra: agents
192
- Requires-Dist: langchain<2.0.0,>=1.0.0; extra == "agents"
193
- Requires-Dist: langchain-core<2.0.0,>=1.2.5; extra == "agents"
194
- Requires-Dist: langchain-text-splitters<0.4.0,>=0.3.9; extra == "agents"
195
- Requires-Dist: langgraph<2.0.0,>=1.0.0; extra == "agents"
196
- Requires-Dist: langgraph-checkpoint<4.0.0,>=3.0.0; extra == "agents"
197
- Requires-Dist: marshmallow<5.0.0,>=4.1.2; extra == "agents"
198
- Provides-Extra: crewai
199
- Requires-Dist: crewai<1.0.0,>=0.1.0; extra == "crewai"
200
- Requires-Dist: langchain<2.0.0,>=0.1.0; extra == "crewai"
201
- Requires-Dist: langchain-core<2.0.0,>=1.2.6; extra == "crewai"
202
- Provides-Extra: cache
203
- Requires-Dist: sentence-transformers<4.0.0,>=2.0.0; extra == "cache"
204
- Requires-Dist: torch<3.0.0,>=2.0.0; extra == "cache"
205
- Requires-Dist: numpy<3.0.0,>=1.24.0; extra == "cache"
206
- Provides-Extra: healthcare
207
- Requires-Dist: anthropic<1.0.0,>=0.25.0; extra == "healthcare"
208
- Requires-Dist: openai<2.0.0,>=1.12.0; extra == "healthcare"
209
- Requires-Dist: google-generativeai<1.0.0,>=0.3.0; extra == "healthcare"
210
- Requires-Dist: memdocs>=1.0.0; extra == "healthcare"
211
- Requires-Dist: langchain<2.0.0,>=1.0.0; extra == "healthcare"
212
- Requires-Dist: langchain-core<2.0.0,>=1.2.5; extra == "healthcare"
213
- Requires-Dist: langchain-text-splitters<0.4.0,>=0.3.9; extra == "healthcare"
214
- Requires-Dist: langgraph<2.0.0,>=1.0.0; extra == "healthcare"
215
- Requires-Dist: langgraph-checkpoint<4.0.0,>=3.0.0; extra == "healthcare"
216
- Requires-Dist: marshmallow<5.0.0,>=4.1.2; extra == "healthcare"
217
- Requires-Dist: python-docx<1.0.0,>=0.8.11; extra == "healthcare"
218
- Requires-Dist: pyyaml<7.0,>=6.0; extra == "healthcare"
219
- Requires-Dist: fastapi<1.0.0,>=0.109.1; extra == "healthcare"
220
- Requires-Dist: uvicorn<1.0.0,>=0.20.0; extra == "healthcare"
221
- Requires-Dist: starlette<1.0.0,>=0.40.0; extra == "healthcare"
222
- Requires-Dist: bcrypt<5.0.0,>=4.0.0; extra == "healthcare"
223
- Requires-Dist: PyJWT[crypto]>=2.8.0; extra == "healthcare"
224
- Requires-Dist: opentelemetry-api<2.0.0,>=1.20.0; extra == "healthcare"
225
- Requires-Dist: opentelemetry-sdk<2.0.0,>=1.20.0; extra == "healthcare"
226
- Requires-Dist: opentelemetry-exporter-otlp-proto-grpc<2.0.0,>=1.20.0; extra == "healthcare"
227
- Requires-Dist: redis<6.0.0,>=5.0.0; extra == "healthcare"
228
- Provides-Extra: software
229
- Requires-Dist: python-docx<1.0.0,>=0.8.11; extra == "software"
230
- Requires-Dist: pyyaml<7.0,>=6.0; extra == "software"
231
- Provides-Extra: backend
232
- Requires-Dist: fastapi<1.0.0,>=0.109.1; extra == "backend"
233
- Requires-Dist: uvicorn<1.0.0,>=0.20.0; extra == "backend"
234
- Requires-Dist: starlette<1.0.0,>=0.40.0; extra == "backend"
235
- Requires-Dist: bcrypt<5.0.0,>=4.0.0; extra == "backend"
236
- Requires-Dist: PyJWT[crypto]>=2.8.0; extra == "backend"
237
- Provides-Extra: lsp
238
- Requires-Dist: pygls<2.0.0,>=1.0.0; extra == "lsp"
239
- Requires-Dist: lsprotocol<2024.0.0,>=2023.0.0; extra == "lsp"
240
- Provides-Extra: windows
241
- Requires-Dist: colorama<1.0.0,>=0.4.6; extra == "windows"
242
- Provides-Extra: otel
243
- Requires-Dist: opentelemetry-api<2.0.0,>=1.20.0; extra == "otel"
244
- Requires-Dist: opentelemetry-sdk<2.0.0,>=1.20.0; extra == "otel"
245
- Requires-Dist: opentelemetry-exporter-otlp-proto-grpc<2.0.0,>=1.20.0; extra == "otel"
246
- Provides-Extra: docs
247
- Requires-Dist: mkdocs<2.0.0,>=1.5.0; extra == "docs"
248
- Requires-Dist: mkdocs-material<10.0.0,>=9.4.0; extra == "docs"
249
- Requires-Dist: mkdocstrings[python]<1.0.0,>=0.24.0; extra == "docs"
250
- Requires-Dist: mkdocs-with-pdf<1.0.0,>=0.9.3; extra == "docs"
251
- Requires-Dist: pymdown-extensions<11.0,>=10.0; extra == "docs"
252
- Provides-Extra: dev
253
- Requires-Dist: pytest<10.0,>=7.0; extra == "dev"
254
- Requires-Dist: pytest-asyncio<2.0,>=0.21; extra == "dev"
255
- Requires-Dist: pytest-cov<8.0,>=4.0; extra == "dev"
256
- Requires-Dist: pytest-xdist<4.0,>=3.5.0; extra == "dev"
257
- Requires-Dist: pytest-testmon<3.0,>=2.1.0; extra == "dev"
258
- Requires-Dist: pytest-picked<1.0,>=0.5.0; extra == "dev"
259
- Requires-Dist: black<26.0,>=24.3.0; extra == "dev"
260
- Requires-Dist: mypy<2.0,>=1.0; extra == "dev"
261
- Requires-Dist: ruff<1.0,>=0.1; extra == "dev"
262
- Requires-Dist: coverage<8.0,>=7.0; extra == "dev"
263
- Requires-Dist: bandit<2.0,>=1.7; extra == "dev"
264
- Requires-Dist: pre-commit<5.0,>=3.0; extra == "dev"
265
- Requires-Dist: httpx<1.0.0,>=0.27.0; extra == "dev"
266
- Requires-Dist: fastapi<1.0.0,>=0.109.1; extra == "dev"
267
- Provides-Extra: developer
268
- Requires-Dist: anthropic<1.0.0,>=0.25.0; extra == "developer"
269
- Requires-Dist: openai<2.0.0,>=1.12.0; extra == "developer"
270
- Requires-Dist: google-generativeai<1.0.0,>=0.3.0; extra == "developer"
271
- Requires-Dist: memdocs>=1.0.0; extra == "developer"
272
- Requires-Dist: langchain<2.0.0,>=1.0.0; extra == "developer"
273
- Requires-Dist: langchain-core<2.0.0,>=1.2.5; extra == "developer"
274
- Requires-Dist: langchain-text-splitters<0.4.0,>=0.3.9; extra == "developer"
275
- Requires-Dist: langgraph<2.0.0,>=1.0.0; extra == "developer"
276
- Requires-Dist: langgraph-checkpoint<4.0.0,>=3.0.0; extra == "developer"
277
- Requires-Dist: marshmallow<5.0.0,>=4.1.2; extra == "developer"
278
- Requires-Dist: python-docx<1.0.0,>=0.8.11; extra == "developer"
279
- Requires-Dist: pyyaml<7.0,>=6.0; extra == "developer"
280
- Provides-Extra: enterprise
281
- Requires-Dist: anthropic<1.0.0,>=0.25.0; extra == "enterprise"
282
- Requires-Dist: openai<2.0.0,>=1.12.0; extra == "enterprise"
283
- Requires-Dist: google-generativeai<1.0.0,>=0.3.0; extra == "enterprise"
284
- Requires-Dist: memdocs>=1.0.0; extra == "enterprise"
285
- Requires-Dist: langchain<2.0.0,>=1.0.0; extra == "enterprise"
286
- Requires-Dist: langchain-core<2.0.0,>=1.2.5; extra == "enterprise"
287
- Requires-Dist: langchain-text-splitters<0.4.0,>=0.3.9; extra == "enterprise"
288
- Requires-Dist: langgraph<2.0.0,>=1.0.0; extra == "enterprise"
289
- Requires-Dist: langgraph-checkpoint<4.0.0,>=3.0.0; extra == "enterprise"
290
- Requires-Dist: marshmallow<5.0.0,>=4.1.2; extra == "enterprise"
291
- Requires-Dist: python-docx<1.0.0,>=0.8.11; extra == "enterprise"
292
- Requires-Dist: pyyaml<7.0,>=6.0; extra == "enterprise"
293
- Requires-Dist: fastapi<1.0.0,>=0.109.1; extra == "enterprise"
294
- Requires-Dist: uvicorn<1.0.0,>=0.20.0; extra == "enterprise"
295
- Requires-Dist: starlette<1.0.0,>=0.40.0; extra == "enterprise"
296
- Requires-Dist: bcrypt<5.0.0,>=4.0.0; extra == "enterprise"
297
- Requires-Dist: PyJWT[crypto]>=2.8.0; extra == "enterprise"
298
- Requires-Dist: opentelemetry-api<2.0.0,>=1.20.0; extra == "enterprise"
299
- Requires-Dist: opentelemetry-sdk<2.0.0,>=1.20.0; extra == "enterprise"
300
- Requires-Dist: opentelemetry-exporter-otlp-proto-grpc<2.0.0,>=1.20.0; extra == "enterprise"
301
- Provides-Extra: full
302
- Requires-Dist: anthropic<1.0.0,>=0.25.0; extra == "full"
303
- Requires-Dist: openai<2.0.0,>=1.12.0; extra == "full"
304
- Requires-Dist: google-generativeai<1.0.0,>=0.3.0; extra == "full"
305
- Requires-Dist: memdocs>=1.0.0; extra == "full"
306
- Requires-Dist: langchain<2.0.0,>=1.0.0; extra == "full"
307
- Requires-Dist: langchain-core<2.0.0,>=1.2.5; extra == "full"
308
- Requires-Dist: langchain-text-splitters<0.4.0,>=0.3.9; extra == "full"
309
- Requires-Dist: langgraph<2.0.0,>=1.0.0; extra == "full"
310
- Requires-Dist: langgraph-checkpoint<4.0.0,>=3.0.0; extra == "full"
311
- Requires-Dist: marshmallow<5.0.0,>=4.1.2; extra == "full"
312
- Requires-Dist: python-docx<1.0.0,>=0.8.11; extra == "full"
313
- Requires-Dist: pyyaml<7.0,>=6.0; extra == "full"
314
- Provides-Extra: all
315
- Requires-Dist: anthropic<1.0.0,>=0.25.0; extra == "all"
316
- Requires-Dist: openai<2.0.0,>=1.12.0; extra == "all"
317
- Requires-Dist: google-generativeai<1.0.0,>=0.3.0; extra == "all"
318
- Requires-Dist: memdocs>=1.0.0; extra == "all"
319
- Requires-Dist: langchain<2.0.0,>=1.0.0; extra == "all"
320
- Requires-Dist: langchain-core<2.0.0,>=1.2.5; extra == "all"
321
- Requires-Dist: langchain-text-splitters<0.4.0,>=0.3.9; extra == "all"
322
- Requires-Dist: langgraph<2.0.0,>=1.0.0; extra == "all"
323
- Requires-Dist: langgraph-checkpoint<4.0.0,>=3.0.0; extra == "all"
324
- Requires-Dist: marshmallow<5.0.0,>=4.1.2; extra == "all"
325
- Requires-Dist: python-docx<1.0.0,>=0.8.11; extra == "all"
326
- Requires-Dist: pyyaml<7.0,>=6.0; extra == "all"
327
- Requires-Dist: fastapi<1.0.0,>=0.109.1; extra == "all"
328
- Requires-Dist: uvicorn<1.0.0,>=0.20.0; extra == "all"
329
- Requires-Dist: starlette<1.0.0,>=0.40.0; extra == "all"
330
- Requires-Dist: bcrypt<5.0.0,>=4.0.0; extra == "all"
331
- Requires-Dist: PyJWT[crypto]>=2.8.0; extra == "all"
332
- Requires-Dist: pygls<2.0.0,>=1.0.0; extra == "all"
333
- Requires-Dist: lsprotocol<2024.0.0,>=2023.0.0; extra == "all"
334
- Requires-Dist: colorama<1.0.0,>=0.4.6; extra == "all"
335
- Requires-Dist: opentelemetry-api<2.0.0,>=1.20.0; extra == "all"
336
- Requires-Dist: opentelemetry-sdk<2.0.0,>=1.20.0; extra == "all"
337
- Requires-Dist: opentelemetry-exporter-otlp-proto-grpc<2.0.0,>=1.20.0; extra == "all"
338
- Requires-Dist: mkdocs<2.0.0,>=1.5.0; extra == "all"
339
- Requires-Dist: mkdocs-material<10.0.0,>=9.4.0; extra == "all"
340
- Requires-Dist: mkdocstrings[python]<1.0.0,>=0.24.0; extra == "all"
341
- Requires-Dist: mkdocs-with-pdf<1.0.0,>=0.9.3; extra == "all"
342
- Requires-Dist: pymdown-extensions<11.0,>=10.0; extra == "all"
343
- Requires-Dist: pytest<9.0,>=7.0; extra == "all"
344
- Requires-Dist: pytest-asyncio<1.0,>=0.21; extra == "all"
345
- Requires-Dist: pytest-cov<5.0,>=4.0; extra == "all"
346
- Requires-Dist: black<26.0,>=24.3.0; extra == "all"
347
- Requires-Dist: mypy<2.0,>=1.0; extra == "all"
348
- Requires-Dist: ruff<1.0,>=0.1; extra == "all"
349
- Requires-Dist: coverage<8.0,>=7.0; extra == "all"
350
- Requires-Dist: bandit<2.0,>=1.7; extra == "all"
351
- Requires-Dist: pre-commit<4.0,>=3.0; extra == "all"
352
- Requires-Dist: httpx<1.0.0,>=0.27.0; extra == "all"
353
- Requires-Dist: urllib3<3.0.0,>=2.3.0; extra == "all"
354
- Requires-Dist: aiohttp<4.0.0,>=3.10.0; extra == "all"
355
- Requires-Dist: filelock<4.0.0,>=3.16.0; extra == "all"
356
- Dynamic: license-file
357
-
358
- # Empathy Framework
359
-
360
- **The Claude-optimized AI collaboration framework with breakthrough meta-orchestration - agents that compose themselves.**
361
-
362
- 🚀 **v4.6.6: Performance Optimized** - 36% faster scanning, 39% faster init, 11,000+ tests passing. Built and tested extensively with Claude Code. **Full multi-LLM support** - works seamlessly with OpenAI, Gemini, and local models.
363
-
364
- [![PyPI](https://img.shields.io/pypi/v/empathy-framework)](https://pypi.org/project/empathy-framework/)
365
- [![Tests](https://img.shields.io/badge/tests-4%2C000%2B%20passing-brightgreen)](https://github.com/Smart-AI-Memory/empathy-framework/actions)
366
- [![Coverage](https://img.shields.io/badge/coverage-68%25-yellow)](https://github.com/Smart-AI-Memory/empathy-framework)
367
- [![License](https://img.shields.io/badge/license-Fair%20Source%200.9-blue)](https://github.com/Smart-AI-Memory/empathy-framework/blob/main/LICENSE)
368
- [![Python](https://img.shields.io/badge/python-3.10+-blue)](https://www.python.org)
369
- [![Security](https://img.shields.io/badge/security-hardened-green)](https://github.com/Smart-AI-Memory/empathy-framework/blob/main/SECURITY.md)
370
-
371
- ```bash
372
- pip install empathy-framework[developer] # Lightweight for individual developers
373
- ```
374
-
375
- ## What's New in v4.6.6 🚀 **PERFORMANCE OPTIMIZED**
376
-
377
- ### **Faster Scanning, Faster Init, More Tests**
378
-
379
- **v4.6.6** delivers significant performance improvements across core framework operations:
380
-
381
- **Performance Gains:**
382
-
383
- | Component | Improvement | Details |
384
- |-----------|-------------|---------|
385
- | Project Scanner | **36% faster** | Single-pass AST analysis (O(n) vs O(n²)) |
386
- | CostTracker Init | **39% faster** | Lazy loading with pre-computed summaries |
387
- | Test Generation | **95% faster** | Cascading benefit from CostTracker |
388
- | Test Suite | **11,000+ passing** | Comprehensive coverage |
389
-
390
- **Technical Details:**
391
- - Rewrote `_analyze_python_ast()` using `NodeVisitor` pattern
392
- - Implemented lazy loading for request history
393
- - Added `costs_summary.json` for fast aggregated access
394
- - Reduced function calls by 47% during scans
395
-
396
- ---
397
-
398
- ## What's New in v4.6.5 🎯 **OPTIMIZED FOR CLAUDE CODE**
399
-
400
- ### **Built for Claude Code, Works Everywhere**
401
-
402
- **v4.6.5** is optimized and extensively tested with Claude Code for the best development experience, while maintaining full compatibility with OpenAI, Gemini, and local models.
403
-
404
- **Cost-Saving Features:**
405
-
406
- - 📉 **Prompt Caching** - 90% reduction on repeated operations (enabled by default)
407
- - ⚡ **True Async I/O** - `AsyncAnthropic` for parallel efficiency
408
- - 🎯 **Slash Commands** - 10+ structured workflows that reduce token waste
409
- - 🧠 **Auto Pattern Learning** - Stop re-explaining the same codebase
410
-
411
- **New Slash Commands:**
412
-
413
- | Command | What It Does |
414
- |---------|--------------|
415
- | `/debug` | Bug investigation with pattern matching |
416
- | `/refactor` | Safe refactoring with test verification |
417
- | `/review` | Code review against project standards |
418
- | `/review-pr` | PR review with APPROVE/REJECT verdict |
419
- | `/deps` | Dependency audit (CVE, licenses, outdated) |
420
- | `/profile` | Performance profiling and bottlenecks |
421
- | `/benchmark` | Performance regression tracking |
422
- | `/explain` | Code architecture explanation |
423
- | `/commit` | Well-formatted git commits |
424
- | `/pr` | Structured PR creation |
425
-
426
- **Multi-LLM Support:**
427
-
428
- ```python
429
- # All providers supported with async clients
430
- from empathy_llm_toolkit.providers import (
431
- AnthropicProvider, # Claude (primary, optimized)
432
- OpenAIProvider, # GPT-4, GPT-3.5
433
- GeminiProvider, # Gemini 1.5, 2.0
434
- LocalProvider, # Ollama, LM Studio
435
- )
436
- ```
437
-
438
- ---
439
-
440
- ## What's New in v4.6.0 💰 **$0 COST AI WORKFLOWS**
441
-
442
- ### **Run Agent Teams Free with Any Claude Code Subscription**
443
-
444
- **v4.6** revolutionizes how you use Empathy Framework - all multi-agent workflows now run **at no additional cost** when you have any Claude Code subscription.
445
-
446
- **Key Features:**
447
-
448
- - 💰 **$0 Execution** - Agent teams use Claude Code's Task tool instead of API calls
449
- - 🎓 **Socratic Agent Creation** - `/create-agent` and `/create-team` guide you through building custom agents
450
- - 🧠 **Memory Enhancement** - Optional short-term and long-term memory for agents that learn
451
- - 🧹 **Streamlined Skills** - 13 clean skills that work without API keys
452
-
453
- **Quick Start (Claude Code):**
454
-
455
- ```
456
- /create-agent # Walk through creating a custom AI agent
457
- /create-team # Build a multi-agent team with guided questions
458
- /release-prep # Run 4-agent release readiness check ($0)
459
- /test-coverage # 3-agent coverage analysis ($0)
460
- ```
461
-
462
- **Available Skills (13 total):**
463
-
464
- | Skill | Description | Cost |
465
- |-------|-------------|------|
466
- | `/create-agent` | Socratic guide to build custom agents | $0 |
467
- | `/create-team` | Build multi-agent teams interactively | $0 |
468
- | `/release-prep` | Security, coverage, quality, docs check | $0 |
469
- | `/test-coverage` | Coverage gap analysis + suggestions | $0 |
470
- | `/test-maintenance` | Find stale/flaky tests | $0 |
471
- | `/manage-docs` | Keep docs in sync with code | $0 |
472
- | `/feature-overview` | Generate technical documentation | $0 |
473
- | `/security-scan` | Run pytest, ruff, black checks | $0 |
474
- | `/test` | Run test suite with summary | $0 |
475
- | `/status` | Show project dashboard | $0 |
476
- | `/publish` | PyPI publishing guide | $0 |
477
- | `/init` | Initialize new Empathy project | $0 |
478
- | `/memory` | Memory system management | $0 |
479
-
480
- **Enterprise API Mode** (optional):
481
-
482
- ```bash
483
- # For CI/CD, cron jobs, or programmatic control
484
- empathy meta-workflow run release-prep --real --use-defaults
485
- ```
486
-
487
- ---
488
-
489
- ## What's New in v4.5.0 🖥️ **VS CODE INTEGRATION**
490
-
491
- ### **Rich HTML Reports for Agent Team Execution**
492
-
493
- **v4.5** adds VS Code webview integration with rich HTML reports, Quick Run mode, and JSON output for programmatic workflows.
494
-
495
- **Key Features:**
496
-
497
- - 📊 **MetaWorkflowReportPanel** - Rich HTML webview displaying agent results with collapsible sections
498
- - ⚡ **Quick Run Mode** - Execute with defaults, see results in beautiful reports
499
- - 🔧 **CLI JSON Output** - `--json` flag for programmatic consumption
500
- - 🎨 **Agent Cards** - Tier badges, status indicators, cost breakdowns
501
-
502
- **Quick Start (VS Code):**
503
-
504
- 1. Open Command Palette (`Cmd+Shift+P`)
505
- 2. Run "Empathy: Run Meta-Workflow"
506
- 3. Select "Quick Run (Webview Report)"
507
- 4. View rich HTML report with agent results
508
-
509
- ---
510
-
511
- ## What's New in v4.4.0 🚀 **PRODUCTION-READY AGENT TEAMS**
512
-
513
- ### **Real LLM Execution with Cost Tracking**
514
-
515
- **v4.4** brings production-ready agent teams with real Claude model execution, accurate cost tracking, and skill-based invocation.
516
-
517
- **Breakthrough Features:**
518
-
519
- - 🤖 **Real LLM Execution** - Agents execute with actual Claude API calls
520
- - 💰 **Accurate Cost Tracking** - Token counting from real API usage
521
- - 📈 **Progressive Tier Escalation** - CHEAP → CAPABLE → PREMIUM with actual execution
522
- - 🎯 **Skill-based Invocation** - Use `/release-prep`, `/test-coverage`, `/manage-docs` in Claude Code
523
-
524
- **Quick Start (CLI):**
525
-
526
- ```bash
527
- # Run release preparation agent team
528
- empathy meta-workflow run release-prep --real
529
-
530
- # Natural language - describe what you need
531
- empathy meta-workflow ask "prepare my code for release" --auto
532
- ```
533
-
534
- ---
535
-
536
- ## Meta-Workflow System 🤖 (v4.2+)
537
-
538
- ### **Intelligent Workflow Orchestration Through Forms + Dynamic Agents**
539
-
540
- **The breakthrough:** The meta-workflow system combines Socratic forms (interactive questions), dynamic agent team creation, and pattern learning for self-improving workflows.
541
-
542
- **How it works:**
543
-
544
- 1. 🎯 **Template Selection** - Choose from pre-built workflow templates (e.g., `python_package_publish`)
545
- 2. 📝 **Socratic Forms** - Answer interactive questions about your workflow requirements
546
- 3. 🤖 **Dynamic Agent Creation** - System generates optimized agent team based on your responses
547
- 4. ⚡ **Progressive Execution** - Agents execute with tier escalation (cheap → capable → premium)
548
- 5. 🧠 **Pattern Learning** - System learns from outcomes to optimize future workflows
549
-
550
- **Quick Start:**
551
-
552
- ```bash
553
- # Run meta-workflow with interactive form
554
- empathy meta-workflow run python_package_publish
555
-
556
- # View pattern learning insights
557
- empathy meta-workflow analytics python_package_publish
558
-
559
- # List historical executions
560
- empathy meta-workflow list-runs
561
- ```
562
-
563
- **Example workflow:**
564
-
565
- ```python
566
- from empathy_os.meta_workflows import TemplateRegistry, MetaWorkflow, FormResponse
567
-
568
- # Load template
569
- registry = TemplateRegistry()
570
- template = registry.load_template("python_package_publish")
571
-
572
- # Create workflow
573
- workflow = MetaWorkflow(template=template)
574
-
575
- # Execute with form responses
576
- response = FormResponse(
577
- template_id="python_package_publish",
578
- responses={
579
- "has_tests": "Yes",
580
- "test_coverage_required": "90%",
581
- "quality_checks": ["Linting (ruff)", "Type checking (mypy)"],
582
- "version_bump": "minor",
583
- },
584
- )
585
- result = workflow.execute(form_response=response, mock_execution=True)
586
-
587
- print(f"✅ Created {len(result.agents_created)} agents")
588
- print(f"💰 Total cost: ${result.total_cost:.2f}")
589
- ```
590
-
591
- **Key Features:**
592
-
593
- - ✅ **Interactive forms** via `AskUserQuestion` (batched, max 4 at a time)
594
- - ✅ **Dynamic agent generation** from templates based on responses
595
- - ✅ **Hybrid storage** - files (persistent) + memory (semantic queries)
596
- - ✅ **Pattern learning** - analyzes historical executions for optimization
597
- - ✅ **7 CLI commands** - list, run, analytics, show, export, validate
598
- - ✅ **Security hardened** - OWASP Top 10 compliant, AST-verified
599
-
600
- ---
601
-
602
- ## What's in v4.0.0 🎭 **META-ORCHESTRATION**
603
-
604
- ### **AI Agents That Compose Themselves**
605
-
606
- **The concept:** Instead of manually wiring agent workflows, v4.0 introduces a meta-orchestration system that analyzes tasks, selects optimal agent teams, chooses composition patterns, and learns from outcomes.
607
-
608
- **What this means:**
609
-
610
- - 🧠 **Automatic task analysis** → Determines complexity, domain, required capabilities
611
- - 🤝 **Dynamic team composition** → Selects optimal agents from 7 pre-built templates
612
- - 📐 **Intelligent strategy selection** → Chooses from 6 composition patterns (Sequential, Parallel, Debate, Teaching, Refinement, Adaptive)
613
- - 📚 **Self-learning** → Saves successful compositions and improves over time
614
- - ⚡ **Production-ready workflows** → Release Prep (parallel validation), Test Coverage Boost (sequential improvement)
615
-
616
- ### Quick Start
617
-
618
- **Release preparation with 4 parallel agents:**
619
-
620
- ```bash
621
- empathy orchestrate release-prep
622
- ```
623
-
624
- Automatically runs:
625
-
626
- - **Security Auditor** (vulnerability scan)
627
- - **Test Coverage Analyzer** (gap analysis)
628
- - **Code Quality Reviewer** (best practices)
629
- - **Documentation Writer** (completeness check)
630
-
631
- **Boost test coverage to 90%:**
632
-
633
- ```bash
634
- empathy orchestrate test-coverage --target 90
635
- ```
636
-
637
- Sequential workflow:
638
-
639
- 1. **Coverage Analyzer** → Identify gaps
640
- 2. **Test Generator** → Create tests
641
- 3. **Test Validator** → Verify coverage
642
-
643
- ### Python API
644
-
645
- ```python
646
- from empathy_os.workflows.orchestrated_release_prep import (
647
- OrchestratedReleasePrepWorkflow
648
- )
649
-
650
- # Create workflow with custom quality gates
651
- workflow = OrchestratedReleasePrepWorkflow(
652
- quality_gates={
653
- "min_coverage": 90.0,
654
- "max_critical_issues": 0,
655
- }
656
- )
657
-
658
- # Execute
659
- report = await workflow.execute(path=".")
660
-
661
- if report.approved:
662
- print(f"✅ Release approved! (confidence: {report.confidence})")
663
- else:
664
- for blocker in report.blockers:
665
- print(f"❌ {blocker}")
666
- ```
667
-
668
- ### 6 Composition Patterns
669
-
670
- The meta-orchestrator automatically selects the best pattern:
671
-
672
- 1. **Sequential** (A → B → C) - Pipeline processing
673
- 2. **Parallel** (A ‖ B ‖ C) - Independent validation
674
- 3. **Debate** (A ⇄ B ⇄ C → Synthesis) - Consensus building
675
- 4. **Teaching** (Junior → Expert) - Cost optimization
676
- 5. **Refinement** (Draft → Review → Polish) - Iterative improvement
677
- 6. **Adaptive** (Classifier → Specialist) - Right-sizing
678
-
679
- ### Learning System
680
-
681
- Successful compositions are saved and improved over time:
682
-
683
- ```python
684
- from empathy_os.orchestration.config_store import ConfigurationStore
685
-
686
- store = ConfigurationStore()
687
-
688
- # Find best composition for task
689
- best = store.get_best_for_task("release_prep")
690
- print(f"Success rate: {best.success_rate:.1%}")
691
-
692
- # Reuse proven composition
693
- agents = [get_template(a["role"]) for a in best.agents]
694
- ```
695
-
696
- **Documentation:**
697
-
698
- - [Meta-Orchestration User Guide](https://github.com/Smart-AI-Memory/empathy-framework/blob/main/docs/ORCHESTRATION_USER_GUIDE.md) - Complete guide with examples
699
- - [API Reference](https://github.com/Smart-AI-Memory/empathy-framework/blob/main/docs/ORCHESTRATION_API.md) - All classes and methods
700
- - [Examples](https://github.com/Smart-AI-Memory/empathy-framework/tree/main/examples/orchestration/) - Working code samples
701
-
702
- **Features:**
703
-
704
- - ✅ **7 pre-built agent templates** (security, testing, docs, etc.)
705
- - ✅ **Automatic strategy selection** based on task analysis
706
- - ✅ **Quality gates enforcement** with detailed reporting
707
- - ✅ **Configuration store** learns from outcomes
708
- - ✅ **Cost optimization** via tier selection (CHEAP → CAPABLE → PREMIUM)
709
-
710
- ---
711
-
712
- ### Previous Releases
713
-
714
- #### v3.9.0
715
-
716
- ### 🔒 **Security Hardening: 174 Security Tests (Up from 14)**
717
-
718
- **Production-ready security with comprehensive file path validation across the entire framework.**
719
-
720
- - ✅ **6 modules secured** with Pattern 6 (File Path Validation)
721
- - ✅ **13 file write operations** validated to prevent path traversal (CWE-22)
722
- - ✅ **174 security tests** (100% passing) - up from 14 tests (+1143% increase)
723
- - ✅ **Zero blind exception handlers** - all errors now properly typed and logged
724
-
725
- ```python
726
- # All file writes now validated for security
727
- from empathy_os.config import EmpathyConfig
728
-
729
- config = EmpathyConfig(user_id="alice")
730
- config.to_yaml("/etc/passwd") # ❌ ValueError: Cannot write to system directory
731
- config.to_yaml("./empathy.yml") # ✅ Safe write
732
- ```
733
-
734
- **Attack vectors blocked:**
735
-
736
- - Path traversal: `../../../etc/passwd` → `ValueError`
737
- - Null byte injection: `config\x00.json` → `ValueError`
738
- - System directory writes: `/etc`, `/sys`, `/proc`, `/dev` → All blocked
739
-
740
- See [SECURITY.md](https://github.com/Smart-AI-Memory/empathy-framework/blob/main/SECURITY.md) for complete security documentation.
741
-
742
- ### 🛡️ **Exception Handling Improvements**
743
-
744
- **Better error messages with graceful degradation.**
745
-
746
- - Fixed 8 blind `except Exception:` handlers in workflow base
747
- - Specific exception types for better debugging
748
- - Enhanced error logging while maintaining graceful degradation
749
- - All intentional broad catches documented with design rationale
750
-
751
- ---
752
-
753
- #### v3.8.3
754
-
755
- ### 🎯 **Transparent Cost Claims: Honest Role-Based Savings (34-86%)**
756
-
757
- **Real savings depend on your work role.** Architects using 60% PREMIUM tasks see 34% savings, while junior devs see 86%. See [role-based analysis](https://github.com/Smart-AI-Memory/empathy-framework/blob/main/docs/cost-analysis/COST_SAVINGS_BY_ROLE_AND_PROVIDER.md) for your specific case.
758
-
759
- ### 🚀 **Intelligent Response Caching: Up to 57% Hit Rate (Benchmarked)**
760
-
761
- **Hash-only cache**: 100% hit rate on identical prompts, ~5μs lookups
762
- **Hybrid cache**: Up to 57% hit rate on semantically similar prompts (measured on security audit workflow)
763
-
764
- ```python
765
- from empathy_os.cache import create_cache
766
-
767
- # Hash-only mode (fast, exact matches)
768
- cache = create_cache(cache_type="hash")
769
-
770
- # Hybrid mode (semantic similarity)
771
- cache = create_cache(cache_type="hybrid", similarity_threshold=0.95)
772
- ```
773
-
774
- See [caching docs](https://github.com/Smart-AI-Memory/empathy-framework/blob/main/docs/caching/) for benchmarks and configuration.
775
-
776
- ### 📊 **Local Usage Telemetry: Track Your Real Savings**
777
-
778
- Track your actual cost savings vs baseline without sending data to external servers.
779
-
780
- ```bash
781
- # View recent usage
782
- empathy telemetry show
783
-
784
- # Calculate your savings vs all-PREMIUM baseline
785
- empathy telemetry savings --days 30
786
-
787
- # Compare time periods
788
- empathy telemetry compare --period1 7 --period2 30
789
-
790
- # Export for analysis
791
- empathy telemetry export --format csv --output usage.csv
792
- ```
793
-
794
- **Privacy**: All data stored locally in `~/.empathy/telemetry/`. No data sent to external servers.
795
-
796
- ---
797
-
798
- #### v3.7.0
799
-
800
- #### 🚀 **XML-Enhanced Prompting: 15-35% Token Reduction + Graceful Validation**
801
-
802
- **Slash your API costs and eliminate response parsing errors with production-ready XML enhancements.**
803
-
804
- #### Context Window Optimization — **Save 15-35% on Every Request**
805
-
806
- ```python
807
- from empathy_os.optimization import ContextOptimizer, CompressionLevel
808
-
809
- optimizer = ContextOptimizer(CompressionLevel.MODERATE)
810
- optimized_prompt = optimizer.optimize(your_xml_prompt)
811
- # Achieves 15-25% token reduction automatically
812
- ```
813
-
814
- - **Tag compression**: `<thinking>` → `<t>`, `<answer>` → `<a>` (15+ common tags)
815
- - **Whitespace optimization**: Removes excess whitespace while preserving structure
816
- - **Redundancy elimination**: Strips "Please note that", "Make sure to", etc.
817
- - **Real-world impact**: Integration tests achieved **49.7% reduction** on typical prompts
818
- - **Bidirectional**: Full decompression to restore original tag names
819
-
820
- #### XML Validation — **Never Crash on Malformed Responses Again**
821
-
822
- ```python
823
- from empathy_os.validation import validate_xml_response
824
-
825
- result = validate_xml_response(llm_response)
826
- if result.is_valid:
827
- data = result.parsed_data
828
- else:
829
- # Fallback extraction worked - you still get partial data
830
- data = result.parsed_data or {}
831
- ```
832
-
833
- - **Graceful fallback parsing**: Regex extraction when XML is malformed
834
- - **Optional XSD validation**: Full schema validation with lxml
835
- - **Schema caching**: Performance optimization for repeated validations
836
- - **25 comprehensive tests**: Covers edge cases, malformed input, and XSD validation
837
-
838
- #### Migration Made Easy
839
-
840
- See [XML_WORKFLOW_MIGRATION_GUIDE.md](XML_WORKFLOW_MIGRATION_GUIDE.md) for complete migration guide with:
841
-
842
- - XMLAgent/XMLTask patterns with before/after examples
843
- - Configuration options (`config.xml.use_xml_structure`)
844
- - Benefits: **40-60% fewer misinterpretations**, **20-30% fewer retries**
845
-
846
- **Test Coverage**: **229 new tests** (86 XML enhancement + 143 robustness) — **100% passing**
847
-
848
- ---
849
-
850
- ## What's New in v3.6.0
851
-
852
- ### 💡 **Finally! Error Messages That Actually Help You**
853
-
854
- **No more cryptic `NotImplementedError` when extending the framework!**
855
-
856
- We completely rewrote error messages across **5 base classes**. Now when you're building plugins or extensions, you get:
857
-
858
- ✅ **Exactly which method** you need to implement
859
- ✅ **Which base class** to extend
860
- ✅ **Real working examples** from the codebase to copy
861
- ✅ **Clear explanations** of what each method should return
862
-
863
- **Before** (frustrating 😤):
864
-
865
- ```python
866
- NotImplementedError
867
- # ...now what? Time to dig through source code for 30 minutes
868
- ```
869
-
870
- **After** (helpful 🎯):
871
-
872
- ```python
873
- NotImplementedError: BaseLinterParser.parse() must be implemented.
874
- Create a subclass of BaseLinterParser and implement the parse() method.
875
- See ESLintParser, PylintParser, or MyPyParser for examples.
876
- # Perfect! Now I know exactly what to do
877
- ```
878
-
879
- #### Plus: 9 Integration TODOs Now Link to Working Code
880
-
881
- - **Want to add compliance tracking?** → See `ComplianceDatabase` class (agents/compliance_db.py)
882
- - **Need multi-channel notifications?** → See `NotificationService` class (agents/notifications.py)
883
- - **Wondering about MemDocs integration?** → We documented why local cache works better (with rationale)
884
- - **Need secure document storage?** → S3/Azure/SharePoint recommendations with HIPAA requirements
885
-
886
- **Impact**: Onboard new contributors in **minutes instead of hours**. Build your first plugin in **one sitting**.
887
-
888
- ---
889
-
890
- ### 🔐 Production-Grade Security & Compliance
891
-
892
- #### Secure Authentication System ✅ *Deployed in Backend API*
893
-
894
- - **Bcrypt password hashing** with cost factor 12 (industry standard 2026)
895
- - **JWT tokens** with 30-minute expiration and automatic refresh
896
- - **Rate limiting**: 5 failed attempts = 15-minute lockout (prevents brute force)
897
- - **18 comprehensive security tests** covering all attack vectors
898
- - **Status**: Fully integrated into `backend/api/wizard_api.py`
899
-
900
- #### HIPAA/GDPR Compliance Database 🛠️ *Infrastructure Ready*
901
-
902
- - **Append-only architecture** (INSERT only, no UPDATE/DELETE) - satisfies regulators
903
- - **Immutable audit trail** for healthcare and enterprise compliance
904
- - **Compliance gap detection** with severity classification
905
- - **12 tests** ensuring regulatory compliance
906
- - **Status**: Production-ready code with [integration points documented](agents/compliance_db.py). See [compliance_anticipation_agent.py](agents/compliance_anticipation_agent.py) for usage examples.
907
-
908
- #### Multi-Channel Notification System 🛠️ *Infrastructure Ready*
909
-
910
- - **Email** (SMTP), **Slack** (webhooks), **SMS** (Twilio)
911
- - **Graceful fallback** when channels unavailable
912
- - **Smart routing**: SMS only for critical alerts (cost optimization)
913
- - **10 tests** covering all notification scenarios
914
- - **Status**: Production-ready code with [integration points documented](agents/notifications.py). See TODOs in compliance agent for usage examples.
915
-
916
- ---
917
-
918
- ### Previous: Project Indexing & Test Suite Expansion (v3.5.4)
919
-
920
- - **Project Indexing System** — JSON-based file tracking with automatic structure scanning, metadata tracking, and CrewAI integration
921
- - **5,603 Tests** — Comprehensive test coverage at 64% with 30+ new test modules
922
- - **BaselineManager Fix** — Resolved test isolation bug affecting suppression system
923
-
924
- ### Memory API Security Hardening (v3.5.0)
925
-
926
- - **Input Validation** — Pattern IDs, agent IDs, and classifications validated to prevent path traversal and injection attacks
927
- - **API Key Authentication** — Bearer token and X-API-Key header support with SHA-256 hash comparison
928
- - **Rate Limiting** — Per-IP sliding window rate limiting (100 req/min default)
929
- - **HTTPS/TLS Support** — Optional SSL certificate configuration for encrypted connections
930
- - **CORS Restrictions** — Configurable allowed origins (localhost-only by default)
931
- - **Request Size Limits** — 1MB body limit to prevent DoS attacks
932
-
933
- ### Previous (v3.4.x)
934
-
935
- - **Trust Circuit Breaker** — Automatic degradation when model reliability drops
936
- - **Pattern Catalog System** — Searchable pattern library with similarity matching
937
- - **Memory Control Panel** — VSCode sidebar for Redis and pattern management
938
-
939
- ### Previous (v3.3.x)
940
-
941
- - **Formatted Reports** — Every workflow includes `formatted_report` with consistent structure
942
- - **Enterprise-Safe Doc-Gen** — Auto-scaling tokens, cost guardrails, file export
943
- - **Unified Typer CLI** — One `empathy` command with Rich output
944
- - **Python 3.13 Support** — Test matrix covers 3.10-3.13 across all platforms
945
-
946
- ### Previous (v3.1.x)
947
-
948
- - **Smart Router** — Natural language wizard dispatch: "Fix security in auth.py" → SecurityWizard
949
- - **Memory Graph** — Cross-wizard knowledge sharing across sessions
950
- - **Auto-Chaining** — Wizards automatically trigger related wizards
951
- - **Resilience Patterns** — Retry, Circuit Breaker, Timeout, Health Checks
952
-
953
- ### Previous (v3.0.x)
954
-
955
- - **Multi-Model Provider System** — Anthropic, OpenAI, Google Gemini, Ollama, or Hybrid mode
956
- - **34-86% Cost Savings** — Smart tier routing varies by role: architects 34%, senior devs 65%, junior devs 86%*
957
- - **VSCode Dashboard** — 10 integrated workflows with input history persistence
958
-
959
- *See [Cost Savings Analysis](https://github.com/Smart-AI-Memory/empathy-framework/blob/main/docs/cost-analysis/COST_SAVINGS_BY_ROLE_AND_PROVIDER.md) for your specific use case
960
-
961
- ---
962
-
963
- ## Quick Start (2 Minutes)
964
-
965
- ### 1. Install
966
-
967
- **Individual Developers (Recommended):**
968
-
969
- ```bash
970
- pip install empathy-framework[developer]
971
- ```
972
-
973
- **Teams/Enterprises (Backend + Auth):**
974
-
975
- ```bash
976
- pip install empathy-framework[enterprise]
977
- ```
978
-
979
- **Healthcare Organizations (HIPAA/GDPR Compliance):**
980
-
981
- ```bash
982
- pip install empathy-framework[healthcare]
983
- ```
984
-
985
- <details>
986
- <summary><b>What's the difference?</b></summary>
987
-
988
- - **`[developer]`** - Lightweight install for individual developers. Includes CLI tools, VSCode extension, LLM providers, agents. **No backend server needed.**
989
-
990
- - **`[enterprise]`** - Everything in `[developer]` plus backend API server with authentication (bcrypt, JWT, rate limiting). For teams deploying to production.
991
-
992
- - **`[healthcare]`** - Everything in `[enterprise]` plus HIPAA/GDPR compliance database, redis, and healthcare-specific plugins. Only needed for regulated industries.
993
-
994
- **Most developers should use `[developer]`** - it's fast to install and has everything you need for software development.
995
-
996
- </details>
997
-
998
- ### 2. Configure Provider
999
-
1000
- ```bash
1001
- # Auto-detect your API keys and configure
1002
- python -m empathy_os.models.cli provider
1003
-
1004
- # Or set explicitly
1005
- python -m empathy_os.models.cli provider --set anthropic
1006
- python -m empathy_os.models.cli provider --set hybrid # Best of all providers
1007
- ```
1008
-
1009
- ### 3. Use It
1010
-
1011
- ```python
1012
- from empathy_os import EmpathyOS
1013
-
1014
- async with EmpathyOS() as empathy:
1015
- # Level 2: Guided - asks clarifying questions
1016
- result = await empathy.level_2_guided(
1017
- "Review this code for security issues"
1018
- )
1019
-
1020
- print(result["questions"]) # Clarifying questions asked
1021
- print(result["response"]) # Analysis response
1022
- print(result["next_steps"]) # Recommended actions
1023
- ```
1024
-
1025
- ### 4. Track Your Savings
1026
-
1027
- ```bash
1028
- # View recent usage
1029
- empathy telemetry show
1030
-
1031
- # Calculate your savings vs all-PREMIUM baseline
1032
- empathy telemetry savings --days 30
1033
-
1034
- # Compare time periods
1035
- empathy telemetry compare --period1 7 --period2 30
1036
-
1037
- # Export for analysis
1038
- empathy telemetry export --format csv --output usage.csv
1039
- ```
1040
-
1041
- **Privacy**: All data stored locally in `~/.empathy/telemetry/`. No data sent to external servers.
1042
-
1043
- ---
1044
-
1045
- ## Why Empathy?
1046
-
1047
- | Feature | Empathy | SonarQube | GitHub Copilot |
1048
- |---------|---------|-----------|----------------|
1049
- | **Predicts future issues** | 30-90 days ahead | No | No |
1050
- | **Persistent memory** | Redis + patterns | No | No |
1051
- | **Multi-provider support** | Claude, GPT-4, Gemini, Ollama | N/A | GPT only |
1052
- | **Cost optimization** | 34-86% savings* | N/A | No |
1053
- | **Your data stays local** | Yes | Cloud | Cloud |
1054
- | **Free for small teams** | ≤5 employees | No | No |
1055
-
1056
- ---
1057
-
1058
- ## What's New in v3.8.0
1059
-
1060
- ### 🚀 **Intelligent Response Caching: Benchmarked Performance**
1061
-
1062
- **Stop paying full price for repeated LLM calls. Measured results: up to 99.8% faster, 40% cost reduction on test generation, 57% cache hit rate on security audits.**
1063
-
1064
- #### Hybrid Cache: Hash + Semantic Matching
1065
-
1066
- ```python
1067
- from empathy_os.workflows import SecurityAuditWorkflow
1068
-
1069
- # That's it - caching auto-configured!
1070
- workflow = SecurityAuditWorkflow(enable_cache=True)
1071
- result = await workflow.execute(target_path="./src")
1072
-
1073
- # Check savings
1074
- print(f"Cost: ${result.cost_report.total_cost:.4f}")
1075
- print(f"Cache hit rate: {result.cost_report.cache_hit_rate:.1f}%")
1076
- print(f"Savings: ${result.cost_report.savings_from_cache:.4f}")
1077
- ```
1078
-
1079
- **Real Results** (v3.8.0 benchmark - see [CACHING_BENCHMARK_REPORT.md](CACHING_BENCHMARK_REPORT.md)):
1080
-
1081
- - **Hash-only cache**: 30.3% average hit rate across 12 workflows, up to 99.8% faster (code review: 17.8s → 0.03s)
1082
- - **Hybrid cache**: Up to 57% hit rate on similar prompts (security audit - benchmarked)
1083
- - **Cost reduction**: 40% on test-generation workflow (measured)
1084
-
1085
- #### Two Cache Strategies
1086
-
1087
- **Hash-Only Cache** (Default - Zero Dependencies):
1088
- - Perfect for CI/CD and testing
1089
- - 100% hit rate on identical prompts
1090
- - ~5μs lookup time
1091
- - No ML dependencies needed
1092
-
1093
- **Hybrid Cache** (Semantic Matching):
1094
-
1095
- - Up to 57% hit rate on similar prompts (benchmarked)
1096
- - Understands intent, not just text
1097
- - Install: `pip install empathy-framework[cache]`
1098
- - Best for development and production
1099
-
1100
- #### Automatic Setup
1101
-
1102
- Framework detects your environment and configures optimal caching:
1103
-
1104
- ```python
1105
- # First run: Framework checks for sentence-transformers
1106
- # - Found? Uses hybrid cache (semantic matching, up to 57% hit rate)
1107
- # - Missing? Prompts: "Install for semantic matching? (y/n)"
1108
- # - Declined? Falls back to hash-only (100% hit rate on identical prompts)
1109
- # - Any errors? Disables gracefully, workflow continues
1110
-
1111
- # Subsequent runs: Cache just works
1112
- ```
1113
-
1114
- #### The Caching Paradox: Adaptive Workflows
1115
-
1116
- **Discovered during v3.8.0 development**: Some workflows (Security Audit, Bug Prediction) cost MORE on Run 2 with cache enabled - and that's a FEATURE.
1117
-
1118
- **Why?** Adaptive workflows use cache to free up time for deeper analysis:
1119
-
1120
- ```
1121
- Security Audit without cache:
1122
- Run 1: $0.11, 45 seconds - surface scan finds 3 issues
1123
-
1124
- Security Audit with cache:
1125
- Run 2: $0.13, 15 seconds - cache frees 30s for deep analysis
1126
- → Uses saved time for PREMIUM tier vulnerability research
1127
- → Finds 7 issues including critical SQLi we missed
1128
- → Extra $0.02 cost = prevented security breach
1129
- ```
1130
-
1131
- **Result**: Cache makes workflows SMARTER, not just cheaper.
1132
-
1133
- See [Adaptive Workflows Documentation](https://github.com/Smart-AI-Memory/empathy-framework/blob/main/docs/caching/ADAPTIVE_WORKFLOWS.md) for full explanation.
1134
-
1135
- #### Complete Documentation
1136
-
1137
- - **[Quick Reference](https://github.com/Smart-AI-Memory/empathy-framework/blob/main/docs/caching/QUICK_REFERENCE.md)** - Common scenarios, 1-page cheat sheet
1138
- - **[Configuration Guide](https://github.com/Smart-AI-Memory/empathy-framework/blob/main/docs/caching/CONFIGURATION_GUIDE.md)** - All options, when to use each
1139
- - **[Adaptive Workflows](https://github.com/Smart-AI-Memory/empathy-framework/blob/main/docs/caching/ADAPTIVE_WORKFLOWS.md)** - Why Run 2 can cost more (it's good!)
1140
-
1141
- **Test it yourself**:
1142
- ```bash
1143
- # Quick test (2-3 minutes)
1144
- python benchmark_caching_simple.py
1145
-
1146
- # Full benchmark (15-20 minutes, all 12 workflows)
1147
- python benchmark_caching.py
1148
- ```
1149
-
1150
- ---
1151
-
1152
- ## Become a Power User
1153
-
1154
- ### Level 1: Basic Usage
1155
-
1156
- ```bash
1157
- pip install empathy-framework[developer]
1158
- ```
1159
-
1160
- - Lightweight install with CLI tools, LLM providers, and agents
1161
- - Works out of the box with sensible defaults
1162
- - Auto-detects your API keys
1163
-
1164
- ### Level 2: Cost Optimization (Role-Based Savings)
1165
-
1166
- **Tier routing automatically routes tasks to appropriate models, saving 34-86% depending on your work role.**
1167
-
1168
- ```bash
1169
- # Enable hybrid mode
1170
- python -m empathy_os.models.cli provider --set hybrid
1171
- ```
1172
-
1173
- #### Tier Pricing
1174
-
1175
- | Tier | Model | Use Case | Cost per Task* |
1176
- |------|-------|----------|----------------|
1177
- | CHEAP | GPT-4o-mini / Haiku | Summarization, formatting, simple tasks | $0.0045-0.0075 |
1178
- | CAPABLE | GPT-4o / Sonnet | Bug fixing, code review, analysis | $0.0725-0.090 |
1179
- | PREMIUM | o1 / Opus | Architecture, complex decisions, design | $0.435-0.450 |
1180
-
1181
- *Typical task: 5,000 input tokens, 1,000 output tokens
1182
-
1183
- #### Actual Savings by Role
1184
-
1185
- | Your Role | PREMIUM % | CAPABLE % | CHEAP % | Actual Savings | Notes |
1186
- |-----------|-----------|-----------|---------|----------------|-------|
1187
- | **Architect / Designer** | 60% | 30% | 10% | **34%** | Design work requires complex reasoning |
1188
- | **Senior Developer** | 25% | 50% | 25% | **65%** | Mix of architecture and implementation |
1189
- | **Mid-Level Developer** | 15% | 60% | 25% | **73%** | Mostly implementation and bug fixes |
1190
- | **Junior Developer** | 5% | 40% | 55% | **86%** | Simple features, tests, documentation |
1191
- | **QA Engineer** | 10% | 35% | 55% | **80%** | Test generation, reports, automation |
1192
- | **DevOps Engineer** | 20% | 50% | 30% | **69%** | Infrastructure planning + automation |
1193
-
1194
- **See [Complete Cost Analysis](https://github.com/Smart-AI-Memory/empathy-framework/blob/main/docs/cost-analysis/COST_SAVINGS_BY_ROLE_AND_PROVIDER.md) for provider comparisons (Anthropic vs OpenAI vs Ollama) and detailed calculations.**
1195
-
1196
- ### Level 3: Multi-Model Workflows
1197
-
1198
- ```python
1199
- from empathy_llm_toolkit import EmpathyLLM
1200
-
1201
- llm = EmpathyLLM(provider="anthropic", enable_model_routing=True)
1202
-
1203
- # Automatically routes to appropriate tier
1204
- await llm.interact(user_id="dev", user_input="Summarize this", task_type="summarize") # → Haiku
1205
- await llm.interact(user_id="dev", user_input="Fix this bug", task_type="fix_bug") # → Sonnet
1206
- await llm.interact(user_id="dev", user_input="Design system", task_type="coordinate") # → Opus
1207
- ```
1208
-
1209
- ### Level 4: VSCode Integration
1210
-
1211
- Install the Empathy VSCode extension for:
1212
-
1213
- - **Real-time Dashboard** — Health score, costs, patterns
1214
- - **One-Click Workflows** — Research, code review, debugging
1215
- - **Visual Cost Tracking** — See savings in real-time
1216
- - See also: `docs/dashboard-costs-by-tier.md` for interpreting the **By tier (7 days)** cost breakdown.
1217
- - **Memory Control Panel (Beta)** — Manage Redis and pattern storage
1218
- - View Redis status and memory usage
1219
- - Browse and export stored patterns
1220
- - Run system health checks
1221
- - Configure auto-start in `empathy.config.yml`
1222
-
1223
- ```yaml
1224
- memory:
1225
- enabled: true
1226
- auto_start_redis: true
1227
- ```
1228
-
1229
- ### Level 5: Custom Agents
1230
-
1231
- ```python
1232
- from empathy_os.agents import AgentFactory
1233
-
1234
- # Create domain-specific agents with inherited memory
1235
- security_agent = AgentFactory.create(
1236
- domain="security",
1237
- memory_enabled=True,
1238
- anticipation_level=4
1239
- )
1240
- ```
1241
-
1242
- ---
1243
-
1244
- ## CLI Reference
1245
-
1246
- ### Provider Configuration
1247
-
1248
- ```bash
1249
- python -m empathy_os.models.cli provider # Show current config
1250
- python -m empathy_os.models.cli provider --set anthropic # Single provider
1251
- python -m empathy_os.models.cli provider --set hybrid # Best-of-breed
1252
- python -m empathy_os.models.cli provider --interactive # Setup wizard
1253
- python -m empathy_os.models.cli provider -f json # JSON output
1254
- ```
1255
-
1256
- ### Model Registry
1257
-
1258
- ```bash
1259
- python -m empathy_os.models.cli registry # Show all models
1260
- python -m empathy_os.models.cli registry --provider openai # Filter by provider
1261
- python -m empathy_os.models.cli costs --input-tokens 50000 # Estimate costs
1262
- ```
1263
-
1264
- ### Telemetry & Analytics
1265
-
1266
- ```bash
1267
- python -m empathy_os.models.cli telemetry # Summary
1268
- python -m empathy_os.models.cli telemetry --costs # Cost savings report
1269
- python -m empathy_os.models.cli telemetry --providers # Provider usage
1270
- python -m empathy_os.models.cli telemetry --fallbacks # Fallback stats
1271
- ```
1272
-
1273
- ### Memory Control
1274
-
1275
- ```bash
1276
- empathy-memory serve # Start Redis + API server
1277
- empathy-memory status # Check system status
1278
- empathy-memory stats # View statistics
1279
- empathy-memory patterns # List stored patterns
1280
- ```
1281
-
1282
- ### Code Inspection
1283
-
1284
- ```bash
1285
- empathy-inspect . # Run full inspection
1286
- empathy-inspect . --format sarif # GitHub Actions format
1287
- empathy-inspect . --fix # Auto-fix safe issues
1288
- empathy-inspect . --staged # Only staged changes
1289
- ```
1290
-
1291
- ---
1292
-
1293
- ## XML-Enhanced Prompts
1294
-
1295
- Enable structured XML prompts for consistent, parseable LLM responses:
1296
-
1297
- ```yaml
1298
- # .empathy/workflows.yaml
1299
- xml_prompt_defaults:
1300
- enabled: false # Set true to enable globally
1301
-
1302
- workflow_xml_configs:
1303
- security-audit:
1304
- enabled: true
1305
- enforce_response_xml: true
1306
- template_name: "security-audit"
1307
- code-review:
1308
- enabled: true
1309
- template_name: "code-review"
1310
- ```
1311
-
1312
- Built-in templates: `security-audit`, `code-review`, `research`, `bug-analysis`, `perf-audit`, `refactor-plan`, `test-gen`, `doc-gen`, `release-prep`, `dependency-check`
1313
-
1314
- ```python
1315
- from empathy_os.prompts import get_template, XmlResponseParser, PromptContext
1316
-
1317
- # Use a built-in template
1318
- template = get_template("security-audit")
1319
- context = PromptContext.for_security_audit(code="def foo(): pass")
1320
- prompt = template.render(context)
1321
-
1322
- # Parse XML responses
1323
- parser = XmlResponseParser(fallback_on_error=True)
1324
- result = parser.parse(llm_response)
1325
- print(result.summary, result.findings, result.checklist)
1326
- ```
1327
-
1328
- ---
1329
-
1330
- ## Enterprise Doc-Gen
1331
-
1332
- Generate comprehensive documentation for large projects with enterprise-safe defaults:
1333
-
1334
- ```python
1335
- from empathy_os.workflows import DocumentGenerationWorkflow
1336
-
1337
- # Enterprise-safe configuration
1338
- workflow = DocumentGenerationWorkflow(
1339
- export_path="docs/generated", # Auto-save to disk
1340
- max_cost=5.0, # Cost guardrail ($5 default)
1341
- chunked_generation=True, # Handle large projects
1342
- graceful_degradation=True, # Partial results on errors
1343
- )
1344
-
1345
- result = await workflow.execute(
1346
- source_code=your_code,
1347
- doc_type="api_reference",
1348
- audience="developers"
1349
- )
1350
-
1351
- # Access the formatted report
1352
- print(result.final_output["formatted_report"])
1353
-
1354
- # Large outputs are chunked for display
1355
- if "output_chunks" in result.final_output:
1356
- for chunk in result.final_output["output_chunks"]:
1357
- print(chunk)
1358
-
1359
- # Full docs saved to disk
1360
- print(f"Saved to: {result.final_output.get('export_path')}")
1361
- ```
1362
-
1363
- ---
1364
-
1365
- ## Smart Router
1366
-
1367
- Route natural language requests to the right wizard automatically:
1368
-
1369
- ```python
1370
- from empathy_os.routing import SmartRouter
1371
-
1372
- router = SmartRouter()
1373
-
1374
- # Natural language routing
1375
- decision = router.route_sync("Fix the security vulnerability in auth.py")
1376
- print(f"Primary: {decision.primary_wizard}") # → security-audit
1377
- print(f"Also consider: {decision.secondary_wizards}") # → [code-review]
1378
- print(f"Confidence: {decision.confidence}")
1379
-
1380
- # File-based suggestions
1381
- suggestions = router.suggest_for_file("requirements.txt") # → [dependency-check]
1382
-
1383
- # Error-based suggestions
1384
- suggestions = router.suggest_for_error("NullReferenceException") # → [bug-predict, test-gen]
1385
- ```
1386
-
1387
- ---
1388
-
1389
- ## Memory Graph
1390
-
1391
- Cross-wizard knowledge sharing - wizards learn from each other:
1392
-
1393
- ```python
1394
- from empathy_os.memory import MemoryGraph, EdgeType
1395
-
1396
- graph = MemoryGraph()
1397
-
1398
- # Add findings from any wizard
1399
- bug_id = graph.add_finding(
1400
- wizard="bug-predict",
1401
- finding={
1402
- "type": "bug",
1403
- "name": "Null reference in auth.py:42",
1404
- "severity": "high"
1405
- }
1406
- )
1407
-
1408
- # Connect related findings
1409
- fix_id = graph.add_finding(wizard="code-review", finding={"type": "fix", "name": "Add null check"})
1410
- graph.add_edge(bug_id, fix_id, EdgeType.FIXED_BY)
1411
-
1412
- # Find similar past issues
1413
- similar = graph.find_similar({"name": "Null reference error"})
1414
-
1415
- # Traverse relationships
1416
- related_fixes = graph.find_related(bug_id, edge_types=[EdgeType.FIXED_BY])
1417
- ```
1418
-
1419
- ---
1420
-
1421
- ## Auto-Chaining
1422
-
1423
- Wizards automatically trigger related wizards based on findings:
1424
-
1425
- ```yaml
1426
- # .empathy/wizard_chains.yaml
1427
- chains:
1428
- security-audit:
1429
- auto_chain: true
1430
- triggers:
1431
- - condition: "high_severity_count > 0"
1432
- next: dependency-check
1433
- approval_required: false
1434
- - condition: "vulnerability_type == 'injection'"
1435
- next: code-review
1436
- approval_required: true
1437
-
1438
- bug-predict:
1439
- triggers:
1440
- - condition: "risk_score > 0.7"
1441
- next: test-gen
1442
-
1443
- templates:
1444
- full-security-review:
1445
- steps: [security-audit, dependency-check, code-review]
1446
- pre-release:
1447
- steps: [test-gen, security-audit, release-prep]
1448
- ```
1449
-
1450
- ```python
1451
- from empathy_os.routing import ChainExecutor
1452
-
1453
- executor = ChainExecutor()
1454
-
1455
- # Check what chains would trigger
1456
- result = {"high_severity_count": 5}
1457
- triggers = executor.get_triggered_chains("security-audit", result)
1458
- # → [ChainTrigger(next="dependency-check"), ...]
1459
-
1460
- # Execute a template
1461
- template = executor.get_template("full-security-review")
1462
- # → ["security-audit", "dependency-check", "code-review"]
1463
- ```
1464
-
1465
- ---
1466
-
1467
- ## Prompt Engineering Wizard
1468
-
1469
- Analyze, generate, and optimize prompts:
1470
-
1471
- ```python
1472
- from coach_wizards import PromptEngineeringWizard
1473
-
1474
- wizard = PromptEngineeringWizard()
1475
-
1476
- # Analyze existing prompts
1477
- analysis = wizard.analyze_prompt("Fix this bug")
1478
- print(f"Score: {analysis.overall_score}") # → 0.13 (poor)
1479
- print(f"Issues: {analysis.issues}") # → ["Missing role", "No output format"]
1480
-
1481
- # Generate optimized prompts
1482
- prompt = wizard.generate_prompt(
1483
- task="Review code for security vulnerabilities",
1484
- role="a senior security engineer",
1485
- constraints=["Focus on OWASP top 10"],
1486
- output_format="JSON with severity and recommendation"
1487
- )
1488
-
1489
- # Optimize tokens (reduce costs)
1490
- result = wizard.optimize_tokens(verbose_prompt)
1491
- print(f"Reduced: {result.token_reduction:.0%}") # → 20% reduction
1492
-
1493
- # Add chain-of-thought scaffolding
1494
- enhanced = wizard.add_chain_of_thought(prompt, "debug")
1495
- ```
1496
-
1497
- ---
1498
-
1499
- ## Install Options
1500
-
1501
- ```bash
1502
- # Recommended (all features)
1503
- pip install empathy-framework[full]
1504
-
1505
- # Minimal
1506
- pip install empathy-framework
1507
-
1508
- # Specific providers
1509
- pip install empathy-framework[anthropic] # Claude
1510
- pip install empathy-framework[openai] # GPT-4, Ollama (OpenAI-compatible)
1511
- pip install empathy-framework[google] # Gemini
1512
- pip install empathy-framework[llm] # All providers
1513
-
1514
- # Development
1515
- git clone https://github.com/Smart-AI-Memory/empathy-framework.git
1516
- cd empathy-framework && pip install -e .[dev]
1517
- ```
1518
-
1519
- ---
1520
-
1521
- ## What's Included
1522
-
1523
- | Component | Description |
1524
- |-----------|-------------|
1525
- | **Empathy OS** | Core engine for human↔AI and AI↔AI collaboration |
1526
- | **Smart Router** | Natural language wizard dispatch with LLM classification |
1527
- | **Memory Graph** | Cross-wizard knowledge sharing (bugs, fixes, patterns) |
1528
- | **Auto-Chaining** | Wizards trigger related wizards based on findings |
1529
- | **Multi-Model Router** | Smart routing across providers and tiers |
1530
- | **Memory System** | Redis short-term + encrypted long-term patterns |
1531
- | **17 Coach Wizards** | Security, performance, testing, docs, prompt engineering |
1532
- | **10 Cost-Optimized Workflows** | Multi-tier pipelines with formatted reports & XML prompts |
1533
- | **Healthcare Suite** | SBAR, SOAP notes, clinical protocols (HIPAA) |
1534
- | **Code Inspection** | Unified pipeline with SARIF/GitHub Actions support |
1535
- | **VSCode Extension** | Visual dashboard for memory and workflows |
1536
- | **Telemetry & Analytics** | Cost tracking, usage stats, optimization insights |
1537
-
1538
- ---
1539
-
1540
- ## The 5 Levels of AI Empathy
1541
-
1542
- | Level | Name | Behavior | Example |
1543
- |-------|------|----------|---------|
1544
- | 1 | Reactive | Responds when asked | "Here's the data you requested" |
1545
- | 2 | Guided | Asks clarifying questions | "What format do you need?" |
1546
- | 3 | Proactive | Notices patterns | "I pre-fetched what you usually need" |
1547
- | **4** | **Anticipatory** | **Predicts future needs** | **"This query will timeout at 10k users"** |
1548
- | 5 | Transformative | Builds preventing structures | "Here's a framework for all future cases" |
1549
-
1550
- **Empathy operates at Level 4** — predicting problems before they manifest.
1551
-
1552
- ---
1553
-
1554
- ## Environment Setup
1555
-
1556
- ```bash
1557
- # Required: At least one provider
1558
- export ANTHROPIC_API_KEY="sk-ant-..." # For Claude models # pragma: allowlist secret
1559
- export OPENAI_API_KEY="sk-..." # For GPT models # pragma: allowlist secret
1560
- export GOOGLE_API_KEY="..." # For Gemini models # pragma: allowlist secret
1561
-
1562
- # Optional: Redis for memory
1563
- export REDIS_URL="redis://localhost:6379"
1564
-
1565
- # Or use a .env file (auto-detected)
1566
- echo 'ANTHROPIC_API_KEY=sk-ant-...' >> .env
1567
- ```
1568
-
1569
- ---
1570
-
1571
- ## Get Involved
1572
-
1573
- - **[Star this repo](https://github.com/Smart-AI-Memory/empathy-framework)** if you find it useful
1574
- - **[Join Discussions](https://github.com/Smart-AI-Memory/empathy-framework/discussions)** — Questions, ideas, show what you built
1575
- - **[Read the Book](https://smartaimemory.com/book)** — Deep dive into the philosophy
1576
- - **[Full Documentation](https://smartaimemory.com/framework-docs/)** — API reference, examples, guides
1577
-
1578
- ---
1579
-
1580
- ## Project Evolution
1581
-
1582
- For those interested in the development history and architectural decisions:
1583
-
1584
- - **[Development Logs](https://github.com/Smart-AI-Memory/empathy-framework/tree/main/docs/development-logs/)** — Execution plans, phase completions, and progress tracking
1585
- - **[Architecture Docs](https://github.com/Smart-AI-Memory/empathy-framework/tree/main/docs/architecture/)** — System design, memory architecture, and integration plans
1586
- - **[Claude Code Skills](https://github.com/Smart-AI-Memory/empathy-framework/tree/main/.claude/commands/)** — AI-powered workflows and custom agent creation
1587
- - **[Guides](https://github.com/Smart-AI-Memory/empathy-framework/tree/main/docs/guides/)** — Publishing tutorials, MkDocs setup, and distribution policies
1588
-
1589
- ---
1590
-
1591
- ## License
1592
-
1593
- **Fair Source License 0.9** — Free for students, educators, and teams ≤5 employees. Commercial license ($99/dev/year) for larger organizations. [Details →](https://github.com/Smart-AI-Memory/empathy-framework/blob/main/LICENSE)
1594
-
1595
- ---
1596
-
1597
- **Built by [Smart AI Memory](https://smartaimemory.com)** · [Documentation](https://smartaimemory.com/framework-docs/) · [Examples](https://github.com/Smart-AI-Memory/empathy-framework/tree/main/examples) · [Issues](https://github.com/Smart-AI-Memory/empathy-framework/issues)