attune-ai 2.0.0__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 (457) hide show
  1. attune/__init__.py +358 -0
  2. attune/adaptive/__init__.py +13 -0
  3. attune/adaptive/task_complexity.py +127 -0
  4. attune/agent_monitoring.py +414 -0
  5. attune/cache/__init__.py +117 -0
  6. attune/cache/base.py +166 -0
  7. attune/cache/dependency_manager.py +256 -0
  8. attune/cache/hash_only.py +251 -0
  9. attune/cache/hybrid.py +457 -0
  10. attune/cache/storage.py +285 -0
  11. attune/cache_monitor.py +356 -0
  12. attune/cache_stats.py +298 -0
  13. attune/cli/__init__.py +152 -0
  14. attune/cli/__main__.py +12 -0
  15. attune/cli/commands/__init__.py +1 -0
  16. attune/cli/commands/batch.py +264 -0
  17. attune/cli/commands/cache.py +248 -0
  18. attune/cli/commands/help.py +331 -0
  19. attune/cli/commands/info.py +140 -0
  20. attune/cli/commands/inspect.py +436 -0
  21. attune/cli/commands/inspection.py +57 -0
  22. attune/cli/commands/memory.py +48 -0
  23. attune/cli/commands/metrics.py +92 -0
  24. attune/cli/commands/orchestrate.py +184 -0
  25. attune/cli/commands/patterns.py +207 -0
  26. attune/cli/commands/profiling.py +202 -0
  27. attune/cli/commands/provider.py +98 -0
  28. attune/cli/commands/routing.py +285 -0
  29. attune/cli/commands/setup.py +96 -0
  30. attune/cli/commands/status.py +235 -0
  31. attune/cli/commands/sync.py +166 -0
  32. attune/cli/commands/tier.py +121 -0
  33. attune/cli/commands/utilities.py +114 -0
  34. attune/cli/commands/workflow.py +579 -0
  35. attune/cli/core.py +32 -0
  36. attune/cli/parsers/__init__.py +68 -0
  37. attune/cli/parsers/batch.py +118 -0
  38. attune/cli/parsers/cache.py +65 -0
  39. attune/cli/parsers/help.py +41 -0
  40. attune/cli/parsers/info.py +26 -0
  41. attune/cli/parsers/inspect.py +66 -0
  42. attune/cli/parsers/metrics.py +42 -0
  43. attune/cli/parsers/orchestrate.py +61 -0
  44. attune/cli/parsers/patterns.py +54 -0
  45. attune/cli/parsers/provider.py +40 -0
  46. attune/cli/parsers/routing.py +110 -0
  47. attune/cli/parsers/setup.py +42 -0
  48. attune/cli/parsers/status.py +47 -0
  49. attune/cli/parsers/sync.py +31 -0
  50. attune/cli/parsers/tier.py +33 -0
  51. attune/cli/parsers/workflow.py +77 -0
  52. attune/cli/utils/__init__.py +1 -0
  53. attune/cli/utils/data.py +242 -0
  54. attune/cli/utils/helpers.py +68 -0
  55. attune/cli_legacy.py +3957 -0
  56. attune/cli_minimal.py +1159 -0
  57. attune/cli_router.py +437 -0
  58. attune/cli_unified.py +814 -0
  59. attune/config/__init__.py +66 -0
  60. attune/config/xml_config.py +286 -0
  61. attune/config.py +545 -0
  62. attune/coordination.py +870 -0
  63. attune/core.py +1511 -0
  64. attune/core_modules/__init__.py +15 -0
  65. attune/cost_tracker.py +626 -0
  66. attune/dashboard/__init__.py +41 -0
  67. attune/dashboard/app.py +512 -0
  68. attune/dashboard/simple_server.py +435 -0
  69. attune/dashboard/standalone_server.py +547 -0
  70. attune/discovery.py +306 -0
  71. attune/emergence.py +306 -0
  72. attune/exceptions.py +123 -0
  73. attune/feedback_loops.py +373 -0
  74. attune/hot_reload/README.md +473 -0
  75. attune/hot_reload/__init__.py +62 -0
  76. attune/hot_reload/config.py +83 -0
  77. attune/hot_reload/integration.py +229 -0
  78. attune/hot_reload/reloader.py +298 -0
  79. attune/hot_reload/watcher.py +183 -0
  80. attune/hot_reload/websocket.py +177 -0
  81. attune/levels.py +577 -0
  82. attune/leverage_points.py +441 -0
  83. attune/logging_config.py +261 -0
  84. attune/mcp/__init__.py +10 -0
  85. attune/mcp/server.py +506 -0
  86. attune/memory/__init__.py +237 -0
  87. attune/memory/claude_memory.py +469 -0
  88. attune/memory/config.py +224 -0
  89. attune/memory/control_panel.py +1290 -0
  90. attune/memory/control_panel_support.py +145 -0
  91. attune/memory/cross_session.py +845 -0
  92. attune/memory/edges.py +179 -0
  93. attune/memory/encryption.py +159 -0
  94. attune/memory/file_session.py +770 -0
  95. attune/memory/graph.py +570 -0
  96. attune/memory/long_term.py +913 -0
  97. attune/memory/long_term_types.py +99 -0
  98. attune/memory/mixins/__init__.py +25 -0
  99. attune/memory/mixins/backend_init_mixin.py +249 -0
  100. attune/memory/mixins/capabilities_mixin.py +208 -0
  101. attune/memory/mixins/handoff_mixin.py +208 -0
  102. attune/memory/mixins/lifecycle_mixin.py +49 -0
  103. attune/memory/mixins/long_term_mixin.py +352 -0
  104. attune/memory/mixins/promotion_mixin.py +109 -0
  105. attune/memory/mixins/short_term_mixin.py +182 -0
  106. attune/memory/nodes.py +179 -0
  107. attune/memory/redis_bootstrap.py +540 -0
  108. attune/memory/security/__init__.py +31 -0
  109. attune/memory/security/audit_logger.py +932 -0
  110. attune/memory/security/pii_scrubber.py +640 -0
  111. attune/memory/security/secrets_detector.py +678 -0
  112. attune/memory/short_term.py +2192 -0
  113. attune/memory/simple_storage.py +302 -0
  114. attune/memory/storage/__init__.py +15 -0
  115. attune/memory/storage_backend.py +167 -0
  116. attune/memory/summary_index.py +583 -0
  117. attune/memory/types.py +446 -0
  118. attune/memory/unified.py +182 -0
  119. attune/meta_workflows/__init__.py +74 -0
  120. attune/meta_workflows/agent_creator.py +248 -0
  121. attune/meta_workflows/builtin_templates.py +567 -0
  122. attune/meta_workflows/cli_commands/__init__.py +56 -0
  123. attune/meta_workflows/cli_commands/agent_commands.py +321 -0
  124. attune/meta_workflows/cli_commands/analytics_commands.py +442 -0
  125. attune/meta_workflows/cli_commands/config_commands.py +232 -0
  126. attune/meta_workflows/cli_commands/memory_commands.py +182 -0
  127. attune/meta_workflows/cli_commands/template_commands.py +354 -0
  128. attune/meta_workflows/cli_commands/workflow_commands.py +382 -0
  129. attune/meta_workflows/cli_meta_workflows.py +59 -0
  130. attune/meta_workflows/form_engine.py +292 -0
  131. attune/meta_workflows/intent_detector.py +409 -0
  132. attune/meta_workflows/models.py +569 -0
  133. attune/meta_workflows/pattern_learner.py +738 -0
  134. attune/meta_workflows/plan_generator.py +384 -0
  135. attune/meta_workflows/session_context.py +397 -0
  136. attune/meta_workflows/template_registry.py +229 -0
  137. attune/meta_workflows/workflow.py +984 -0
  138. attune/metrics/__init__.py +12 -0
  139. attune/metrics/collector.py +31 -0
  140. attune/metrics/prompt_metrics.py +194 -0
  141. attune/models/__init__.py +172 -0
  142. attune/models/__main__.py +13 -0
  143. attune/models/adaptive_routing.py +437 -0
  144. attune/models/auth_cli.py +444 -0
  145. attune/models/auth_strategy.py +450 -0
  146. attune/models/cli.py +655 -0
  147. attune/models/empathy_executor.py +354 -0
  148. attune/models/executor.py +257 -0
  149. attune/models/fallback.py +762 -0
  150. attune/models/provider_config.py +282 -0
  151. attune/models/registry.py +472 -0
  152. attune/models/tasks.py +359 -0
  153. attune/models/telemetry/__init__.py +71 -0
  154. attune/models/telemetry/analytics.py +594 -0
  155. attune/models/telemetry/backend.py +196 -0
  156. attune/models/telemetry/data_models.py +431 -0
  157. attune/models/telemetry/storage.py +489 -0
  158. attune/models/token_estimator.py +420 -0
  159. attune/models/validation.py +280 -0
  160. attune/monitoring/__init__.py +52 -0
  161. attune/monitoring/alerts.py +946 -0
  162. attune/monitoring/alerts_cli.py +448 -0
  163. attune/monitoring/multi_backend.py +271 -0
  164. attune/monitoring/otel_backend.py +362 -0
  165. attune/optimization/__init__.py +19 -0
  166. attune/optimization/context_optimizer.py +272 -0
  167. attune/orchestration/__init__.py +67 -0
  168. attune/orchestration/agent_templates.py +707 -0
  169. attune/orchestration/config_store.py +499 -0
  170. attune/orchestration/execution_strategies.py +2111 -0
  171. attune/orchestration/meta_orchestrator.py +1168 -0
  172. attune/orchestration/pattern_learner.py +696 -0
  173. attune/orchestration/real_tools.py +931 -0
  174. attune/pattern_cache.py +187 -0
  175. attune/pattern_library.py +542 -0
  176. attune/patterns/debugging/all_patterns.json +81 -0
  177. attune/patterns/debugging/workflow_20260107_1770825e.json +77 -0
  178. attune/patterns/refactoring_memory.json +89 -0
  179. attune/persistence.py +564 -0
  180. attune/platform_utils.py +265 -0
  181. attune/plugins/__init__.py +28 -0
  182. attune/plugins/base.py +361 -0
  183. attune/plugins/registry.py +268 -0
  184. attune/project_index/__init__.py +32 -0
  185. attune/project_index/cli.py +335 -0
  186. attune/project_index/index.py +667 -0
  187. attune/project_index/models.py +504 -0
  188. attune/project_index/reports.py +474 -0
  189. attune/project_index/scanner.py +777 -0
  190. attune/project_index/scanner_parallel.py +291 -0
  191. attune/prompts/__init__.py +61 -0
  192. attune/prompts/config.py +77 -0
  193. attune/prompts/context.py +177 -0
  194. attune/prompts/parser.py +285 -0
  195. attune/prompts/registry.py +313 -0
  196. attune/prompts/templates.py +208 -0
  197. attune/redis_config.py +302 -0
  198. attune/redis_memory.py +799 -0
  199. attune/resilience/__init__.py +56 -0
  200. attune/resilience/circuit_breaker.py +256 -0
  201. attune/resilience/fallback.py +179 -0
  202. attune/resilience/health.py +300 -0
  203. attune/resilience/retry.py +209 -0
  204. attune/resilience/timeout.py +135 -0
  205. attune/routing/__init__.py +43 -0
  206. attune/routing/chain_executor.py +433 -0
  207. attune/routing/classifier.py +217 -0
  208. attune/routing/smart_router.py +234 -0
  209. attune/routing/workflow_registry.py +343 -0
  210. attune/scaffolding/README.md +589 -0
  211. attune/scaffolding/__init__.py +35 -0
  212. attune/scaffolding/__main__.py +14 -0
  213. attune/scaffolding/cli.py +240 -0
  214. attune/scaffolding/templates/base_wizard.py.jinja2 +121 -0
  215. attune/scaffolding/templates/coach_wizard.py.jinja2 +321 -0
  216. attune/scaffolding/templates/domain_wizard.py.jinja2 +408 -0
  217. attune/scaffolding/templates/linear_flow_wizard.py.jinja2 +203 -0
  218. attune/socratic/__init__.py +256 -0
  219. attune/socratic/ab_testing.py +958 -0
  220. attune/socratic/blueprint.py +533 -0
  221. attune/socratic/cli.py +703 -0
  222. attune/socratic/collaboration.py +1114 -0
  223. attune/socratic/domain_templates.py +924 -0
  224. attune/socratic/embeddings.py +738 -0
  225. attune/socratic/engine.py +794 -0
  226. attune/socratic/explainer.py +682 -0
  227. attune/socratic/feedback.py +772 -0
  228. attune/socratic/forms.py +629 -0
  229. attune/socratic/generator.py +732 -0
  230. attune/socratic/llm_analyzer.py +637 -0
  231. attune/socratic/mcp_server.py +702 -0
  232. attune/socratic/session.py +312 -0
  233. attune/socratic/storage.py +667 -0
  234. attune/socratic/success.py +730 -0
  235. attune/socratic/visual_editor.py +860 -0
  236. attune/socratic/web_ui.py +958 -0
  237. attune/telemetry/__init__.py +39 -0
  238. attune/telemetry/agent_coordination.py +475 -0
  239. attune/telemetry/agent_tracking.py +367 -0
  240. attune/telemetry/approval_gates.py +545 -0
  241. attune/telemetry/cli.py +1231 -0
  242. attune/telemetry/commands/__init__.py +14 -0
  243. attune/telemetry/commands/dashboard_commands.py +696 -0
  244. attune/telemetry/event_streaming.py +409 -0
  245. attune/telemetry/feedback_loop.py +567 -0
  246. attune/telemetry/usage_tracker.py +591 -0
  247. attune/templates.py +754 -0
  248. attune/test_generator/__init__.py +38 -0
  249. attune/test_generator/__main__.py +14 -0
  250. attune/test_generator/cli.py +234 -0
  251. attune/test_generator/generator.py +355 -0
  252. attune/test_generator/risk_analyzer.py +216 -0
  253. attune/test_generator/templates/unit_test.py.jinja2 +272 -0
  254. attune/tier_recommender.py +384 -0
  255. attune/tools.py +183 -0
  256. attune/trust/__init__.py +28 -0
  257. attune/trust/circuit_breaker.py +579 -0
  258. attune/trust_building.py +527 -0
  259. attune/validation/__init__.py +19 -0
  260. attune/validation/xml_validator.py +281 -0
  261. attune/vscode_bridge.py +173 -0
  262. attune/workflow_commands.py +780 -0
  263. attune/workflow_patterns/__init__.py +33 -0
  264. attune/workflow_patterns/behavior.py +249 -0
  265. attune/workflow_patterns/core.py +76 -0
  266. attune/workflow_patterns/output.py +99 -0
  267. attune/workflow_patterns/registry.py +255 -0
  268. attune/workflow_patterns/structural.py +288 -0
  269. attune/workflows/__init__.py +539 -0
  270. attune/workflows/autonomous_test_gen.py +1268 -0
  271. attune/workflows/base.py +2667 -0
  272. attune/workflows/batch_processing.py +342 -0
  273. attune/workflows/bug_predict.py +1084 -0
  274. attune/workflows/builder.py +273 -0
  275. attune/workflows/caching.py +253 -0
  276. attune/workflows/code_review.py +1048 -0
  277. attune/workflows/code_review_adapters.py +312 -0
  278. attune/workflows/code_review_pipeline.py +722 -0
  279. attune/workflows/config.py +645 -0
  280. attune/workflows/dependency_check.py +644 -0
  281. attune/workflows/document_gen/__init__.py +25 -0
  282. attune/workflows/document_gen/config.py +30 -0
  283. attune/workflows/document_gen/report_formatter.py +162 -0
  284. attune/workflows/document_gen/workflow.py +1426 -0
  285. attune/workflows/document_manager.py +216 -0
  286. attune/workflows/document_manager_README.md +134 -0
  287. attune/workflows/documentation_orchestrator.py +1205 -0
  288. attune/workflows/history.py +510 -0
  289. attune/workflows/keyboard_shortcuts/__init__.py +39 -0
  290. attune/workflows/keyboard_shortcuts/generators.py +391 -0
  291. attune/workflows/keyboard_shortcuts/parsers.py +416 -0
  292. attune/workflows/keyboard_shortcuts/prompts.py +295 -0
  293. attune/workflows/keyboard_shortcuts/schema.py +193 -0
  294. attune/workflows/keyboard_shortcuts/workflow.py +509 -0
  295. attune/workflows/llm_base.py +363 -0
  296. attune/workflows/manage_docs.py +87 -0
  297. attune/workflows/manage_docs_README.md +134 -0
  298. attune/workflows/manage_documentation.py +821 -0
  299. attune/workflows/new_sample_workflow1.py +149 -0
  300. attune/workflows/new_sample_workflow1_README.md +150 -0
  301. attune/workflows/orchestrated_health_check.py +849 -0
  302. attune/workflows/orchestrated_release_prep.py +600 -0
  303. attune/workflows/output.py +413 -0
  304. attune/workflows/perf_audit.py +863 -0
  305. attune/workflows/pr_review.py +762 -0
  306. attune/workflows/progress.py +785 -0
  307. attune/workflows/progress_server.py +322 -0
  308. attune/workflows/progressive/README 2.md +454 -0
  309. attune/workflows/progressive/README.md +454 -0
  310. attune/workflows/progressive/__init__.py +82 -0
  311. attune/workflows/progressive/cli.py +219 -0
  312. attune/workflows/progressive/core.py +488 -0
  313. attune/workflows/progressive/orchestrator.py +723 -0
  314. attune/workflows/progressive/reports.py +520 -0
  315. attune/workflows/progressive/telemetry.py +274 -0
  316. attune/workflows/progressive/test_gen.py +495 -0
  317. attune/workflows/progressive/workflow.py +589 -0
  318. attune/workflows/refactor_plan.py +694 -0
  319. attune/workflows/release_prep.py +895 -0
  320. attune/workflows/release_prep_crew.py +969 -0
  321. attune/workflows/research_synthesis.py +404 -0
  322. attune/workflows/routing.py +168 -0
  323. attune/workflows/secure_release.py +593 -0
  324. attune/workflows/security_adapters.py +297 -0
  325. attune/workflows/security_audit.py +1329 -0
  326. attune/workflows/security_audit_phase3.py +355 -0
  327. attune/workflows/seo_optimization.py +633 -0
  328. attune/workflows/step_config.py +234 -0
  329. attune/workflows/telemetry_mixin.py +269 -0
  330. attune/workflows/test5.py +125 -0
  331. attune/workflows/test5_README.md +158 -0
  332. attune/workflows/test_coverage_boost_crew.py +849 -0
  333. attune/workflows/test_gen/__init__.py +52 -0
  334. attune/workflows/test_gen/ast_analyzer.py +249 -0
  335. attune/workflows/test_gen/config.py +88 -0
  336. attune/workflows/test_gen/data_models.py +38 -0
  337. attune/workflows/test_gen/report_formatter.py +289 -0
  338. attune/workflows/test_gen/test_templates.py +381 -0
  339. attune/workflows/test_gen/workflow.py +655 -0
  340. attune/workflows/test_gen.py +54 -0
  341. attune/workflows/test_gen_behavioral.py +477 -0
  342. attune/workflows/test_gen_parallel.py +341 -0
  343. attune/workflows/test_lifecycle.py +526 -0
  344. attune/workflows/test_maintenance.py +627 -0
  345. attune/workflows/test_maintenance_cli.py +590 -0
  346. attune/workflows/test_maintenance_crew.py +840 -0
  347. attune/workflows/test_runner.py +622 -0
  348. attune/workflows/tier_tracking.py +531 -0
  349. attune/workflows/xml_enhanced_crew.py +285 -0
  350. attune_ai-2.0.0.dist-info/METADATA +1026 -0
  351. attune_ai-2.0.0.dist-info/RECORD +457 -0
  352. attune_ai-2.0.0.dist-info/WHEEL +5 -0
  353. attune_ai-2.0.0.dist-info/entry_points.txt +26 -0
  354. attune_ai-2.0.0.dist-info/licenses/LICENSE +201 -0
  355. attune_ai-2.0.0.dist-info/licenses/LICENSE_CHANGE_ANNOUNCEMENT.md +101 -0
  356. attune_ai-2.0.0.dist-info/top_level.txt +5 -0
  357. attune_healthcare/__init__.py +13 -0
  358. attune_healthcare/monitors/__init__.py +9 -0
  359. attune_healthcare/monitors/clinical_protocol_monitor.py +315 -0
  360. attune_healthcare/monitors/monitoring/__init__.py +44 -0
  361. attune_healthcare/monitors/monitoring/protocol_checker.py +300 -0
  362. attune_healthcare/monitors/monitoring/protocol_loader.py +214 -0
  363. attune_healthcare/monitors/monitoring/sensor_parsers.py +306 -0
  364. attune_healthcare/monitors/monitoring/trajectory_analyzer.py +389 -0
  365. attune_llm/README.md +553 -0
  366. attune_llm/__init__.py +28 -0
  367. attune_llm/agent_factory/__init__.py +53 -0
  368. attune_llm/agent_factory/adapters/__init__.py +85 -0
  369. attune_llm/agent_factory/adapters/autogen_adapter.py +312 -0
  370. attune_llm/agent_factory/adapters/crewai_adapter.py +483 -0
  371. attune_llm/agent_factory/adapters/haystack_adapter.py +298 -0
  372. attune_llm/agent_factory/adapters/langchain_adapter.py +362 -0
  373. attune_llm/agent_factory/adapters/langgraph_adapter.py +333 -0
  374. attune_llm/agent_factory/adapters/native.py +228 -0
  375. attune_llm/agent_factory/adapters/wizard_adapter.py +423 -0
  376. attune_llm/agent_factory/base.py +305 -0
  377. attune_llm/agent_factory/crews/__init__.py +67 -0
  378. attune_llm/agent_factory/crews/code_review.py +1113 -0
  379. attune_llm/agent_factory/crews/health_check.py +1262 -0
  380. attune_llm/agent_factory/crews/refactoring.py +1128 -0
  381. attune_llm/agent_factory/crews/security_audit.py +1018 -0
  382. attune_llm/agent_factory/decorators.py +287 -0
  383. attune_llm/agent_factory/factory.py +558 -0
  384. attune_llm/agent_factory/framework.py +193 -0
  385. attune_llm/agent_factory/memory_integration.py +328 -0
  386. attune_llm/agent_factory/resilient.py +320 -0
  387. attune_llm/agents_md/__init__.py +22 -0
  388. attune_llm/agents_md/loader.py +218 -0
  389. attune_llm/agents_md/parser.py +271 -0
  390. attune_llm/agents_md/registry.py +307 -0
  391. attune_llm/claude_memory.py +466 -0
  392. attune_llm/cli/__init__.py +8 -0
  393. attune_llm/cli/sync_claude.py +487 -0
  394. attune_llm/code_health.py +1313 -0
  395. attune_llm/commands/__init__.py +51 -0
  396. attune_llm/commands/context.py +375 -0
  397. attune_llm/commands/loader.py +301 -0
  398. attune_llm/commands/models.py +231 -0
  399. attune_llm/commands/parser.py +371 -0
  400. attune_llm/commands/registry.py +429 -0
  401. attune_llm/config/__init__.py +29 -0
  402. attune_llm/config/unified.py +291 -0
  403. attune_llm/context/__init__.py +22 -0
  404. attune_llm/context/compaction.py +455 -0
  405. attune_llm/context/manager.py +434 -0
  406. attune_llm/contextual_patterns.py +361 -0
  407. attune_llm/core.py +907 -0
  408. attune_llm/git_pattern_extractor.py +435 -0
  409. attune_llm/hooks/__init__.py +24 -0
  410. attune_llm/hooks/config.py +306 -0
  411. attune_llm/hooks/executor.py +289 -0
  412. attune_llm/hooks/registry.py +302 -0
  413. attune_llm/hooks/scripts/__init__.py +39 -0
  414. attune_llm/hooks/scripts/evaluate_session.py +201 -0
  415. attune_llm/hooks/scripts/first_time_init.py +285 -0
  416. attune_llm/hooks/scripts/pre_compact.py +207 -0
  417. attune_llm/hooks/scripts/session_end.py +183 -0
  418. attune_llm/hooks/scripts/session_start.py +163 -0
  419. attune_llm/hooks/scripts/suggest_compact.py +225 -0
  420. attune_llm/learning/__init__.py +30 -0
  421. attune_llm/learning/evaluator.py +438 -0
  422. attune_llm/learning/extractor.py +514 -0
  423. attune_llm/learning/storage.py +560 -0
  424. attune_llm/levels.py +227 -0
  425. attune_llm/pattern_confidence.py +414 -0
  426. attune_llm/pattern_resolver.py +272 -0
  427. attune_llm/pattern_summary.py +350 -0
  428. attune_llm/providers.py +967 -0
  429. attune_llm/routing/__init__.py +32 -0
  430. attune_llm/routing/model_router.py +362 -0
  431. attune_llm/security/IMPLEMENTATION_SUMMARY.md +413 -0
  432. attune_llm/security/PHASE2_COMPLETE.md +384 -0
  433. attune_llm/security/PHASE2_SECRETS_DETECTOR_COMPLETE.md +271 -0
  434. attune_llm/security/QUICK_REFERENCE.md +316 -0
  435. attune_llm/security/README.md +262 -0
  436. attune_llm/security/__init__.py +62 -0
  437. attune_llm/security/audit_logger.py +929 -0
  438. attune_llm/security/audit_logger_example.py +152 -0
  439. attune_llm/security/pii_scrubber.py +640 -0
  440. attune_llm/security/secrets_detector.py +678 -0
  441. attune_llm/security/secrets_detector_example.py +304 -0
  442. attune_llm/security/secure_memdocs.py +1192 -0
  443. attune_llm/security/secure_memdocs_example.py +278 -0
  444. attune_llm/session_status.py +745 -0
  445. attune_llm/state.py +246 -0
  446. attune_llm/utils/__init__.py +5 -0
  447. attune_llm/utils/tokens.py +349 -0
  448. attune_software/SOFTWARE_PLUGIN_README.md +57 -0
  449. attune_software/__init__.py +13 -0
  450. attune_software/cli/__init__.py +120 -0
  451. attune_software/cli/inspect.py +362 -0
  452. attune_software/cli.py +574 -0
  453. attune_software/plugin.py +188 -0
  454. workflow_scaffolding/__init__.py +11 -0
  455. workflow_scaffolding/__main__.py +12 -0
  456. workflow_scaffolding/cli.py +206 -0
  457. workflow_scaffolding/generator.py +265 -0
@@ -0,0 +1,457 @@
1
+ attune/__init__.py,sha256=R1re-N0Fi7U3jw6P7FvFYfFZl2KG7qL5eCv54luGs3Y,12045
2
+ attune/agent_monitoring.py,sha256=s4seLC_J4AtQ3PYWrRPO8YHM-Fbm0Q36kPEdlTHf2HI,13375
3
+ attune/cache_monitor.py,sha256=lcBqODhYY9iPaH35PWkOSgyMavdvXneHv9F57dPmjnc,11190
4
+ attune/cache_stats.py,sha256=yZvjC-lCN7rBBeUX6-HG5g5IeCOUZy-Euqu_ey1FLKY,10228
5
+ attune/cli_legacy.py,sha256=8ZfHp50jaPs9hZ3YErBTNRpSsvRIvwwMKEmMvgDU7eQ,140079
6
+ attune/cli_minimal.py,sha256=RvJT7rMh883WwFmAwyel5AiM2ez8zGt5t6GEJSqwCQA,41108
7
+ attune/cli_router.py,sha256=iKbf3Ayb5Z5qCfAajUr8b1Y4AZcwpLBYaCEug3OqTkI,16106
8
+ attune/cli_unified.py,sha256=PgfCbV5Cb-mKBbS4lLMpaO3m7OWUOniK9M3R6V2R1Dg,25241
9
+ attune/config.py,sha256=eocyHkwf85r0EfQYzeskxZkDzEK-wrjGNMBL2ccsUs0,16710
10
+ attune/coordination.py,sha256=gsU2ZiEpjnicV9frq9QNo0zGxf5yQ7n68SvbhnernDM,28501
11
+ attune/core.py,sha256=Z_fX85B42J3R7-JkTlFU4A-gFeo-nPrSBmUr9mh2_QU,53956
12
+ attune/cost_tracker.py,sha256=i6K2CR2CHlRMJlrvkYCumdEA9X_XR6_MrNCEGzVJcDg,22977
13
+ attune/discovery.py,sha256=cRlxExSxAlUXd8AKuzb0_KglWCPrdqPFfeYsR7bOd1s,9936
14
+ attune/emergence.py,sha256=uMNcB3npENNEharvgXAaRazXLMn5fsKtp-p-PFzhyi8,11361
15
+ attune/exceptions.py,sha256=OUJga73z94f4jHPWvU7neBUnsVhCSQXrvr9KUP2MIhw,3272
16
+ attune/feedback_loops.py,sha256=iMV1fAcpGiy7NFbIbNC7Q_UkecdgKWYnQVB-G--DC6M,13465
17
+ attune/levels.py,sha256=KsdNdRURRl1UtCnduWSunzktP_qsFT4lemSPKgWdmXw,19131
18
+ attune/leverage_points.py,sha256=h42xckQVvPC_rG2-FOUX1aEjERx6SI9diojRCeo7pvY,16723
19
+ attune/logging_config.py,sha256=IJ1HJExmjEJoUZTMLbMwTqAz3dWNHiAP3E3woZYgJ2o,8098
20
+ attune/pattern_cache.py,sha256=Z2GKF6_vcjmYEtpaMOU-83klFUk7rFtMpc5wPA1kRI0,5296
21
+ attune/pattern_library.py,sha256=GYWCkzukJ7u5oPTldy7ghTl3CZJgD9Yzs2Foj6u1Cfc,19346
22
+ attune/persistence.py,sha256=wsEJtHdjpEfIQ3-O5PaxAGiZXacON0Pft4gqt7Ui3z8,17714
23
+ attune/platform_utils.py,sha256=NsvAOOA2QgdWLd_44AY1UdQLYuclaOC7SPK-koFyi1A,7384
24
+ attune/redis_config.py,sha256=jDpnKXxBoAo6Cy2oBX9imbRtsUAyPKOIH6jvSlWdcbU,9742
25
+ attune/redis_memory.py,sha256=MYhW_M41AoWhxxh8YggWUHxZaUoQZ7XxqeBB2qDqyww,23347
26
+ attune/templates.py,sha256=EbZmiHqS_jFZg_-lScK0fUUnw7_KpE5J3ZFTWXEKx-Q,17187
27
+ attune/tier_recommender.py,sha256=rBuAgGkNlX9wWcJ1QFi0ASGuZSR9RGl6PEBElxcAzMk,14297
28
+ attune/tools.py,sha256=YCfHTm9Es6wwh7oESt4q0mDz7AV8ecvMAB_1_0516r4,6225
29
+ attune/trust_building.py,sha256=z2ZsQWK5QjX6d7pxFWrFD54J1keUguTog6YztZJVPKI,19180
30
+ attune/vscode_bridge.py,sha256=ToUx4QvfRXQeSmh10sz7gzzEYMBymOTqJ6Zt4RE9YK4,4963
31
+ attune/workflow_commands.py,sha256=9Gdy3iI6LA9y7NtYBieNS3-rbOrrLRavhlbl_2yWVgU,25465
32
+ attune/adaptive/__init__.py,sha256=9LRWvrkitzasuGAqANEpKQMvrj5pPNtulSxz49E-Ke4,338
33
+ attune/adaptive/task_complexity.py,sha256=XhQgubrTxqV2V6CBD4kKZ_0kPCjchzg94HaUFIY6Q3c,3783
34
+ attune/cache/__init__.py,sha256=-TaJd1ByYZlW5YJwsZ7Q0WuzBomCpLbV79M6XFj3yiQ,3224
35
+ attune/cache/base.py,sha256=1waj2OZ_5gRhwYhSfsSfgQs1N_ftZcAq6UAV9RctSek,3968
36
+ attune/cache/dependency_manager.py,sha256=5syHCeunxJHBFggjcMMNSvJw4EJfICfW2mmayAX7OrM,7742
37
+ attune/cache/hash_only.py,sha256=N9fJw-IGOzgfDOuKe15e3AzLrxkjDBbwDXEgR1DYXAo,7492
38
+ attune/cache/hybrid.py,sha256=S73yjzbSeUi_PtE-hEWtml9CN-V3W8qzAlIGu5Y17K0,15541
39
+ attune/cache/storage.py,sha256=-ODkX61DqbK-eDC0uUeRtjcxfKYwK4PxG7mou4x6vgU,7787
40
+ attune/cli/__init__.py,sha256=2K0e6zHipMUGgBu1Fdkb4JnCPzoqklfU92qEjis-G1Q,4931
41
+ attune/cli/__main__.py,sha256=3j6xfa_jrrXAXK7zp0AaKAgG224VxJfrpu-iUmmUkY0,211
42
+ attune/cli/core.py,sha256=USK7MwpSqxKcMP0rxtf9qqTgQ1GMmcPpXBw9uadQ3sM,883
43
+ attune/cli/commands/__init__.py,sha256=GYdoNv80KS2p7bCThuoRbhiLmIZW6ddPqPEFEx567nQ,35
44
+ attune/cli/commands/batch.py,sha256=0TQ50VuFILN6ZTS-JrdtQi7ibuVwEUPq8xkdFsRU5_k,8562
45
+ attune/cli/commands/cache.py,sha256=79DF06zQ7Noe7WwOLtqbDVIngpXCLkjNltP-R7t18iE,8176
46
+ attune/cli/commands/help.py,sha256=cTqvdVCDAXWYbDBoGRZtoSBOYWbXSIPqC4t6gtHpx7Q,10067
47
+ attune/cli/commands/info.py,sha256=sUEt8E4RT3nJYjdw_RE0O4qfLM1eBHYnly8n_AL5dE8,4768
48
+ attune/cli/commands/inspect.py,sha256=wIg7K22MX-32MC-2NrU0JgJwJRsHu7WLz28N2FUw0sQ,16198
49
+ attune/cli/commands/inspection.py,sha256=rNmvBFyzAiaqWRIfZc5wpagvRuky0pNnXipeQalYKMQ,1777
50
+ attune/cli/commands/memory.py,sha256=566vPYCyqoS3231nhqCr2vDUQYCBtP3NT8iLj1-30mQ,1341
51
+ attune/cli/commands/metrics.py,sha256=v4KW46UWYOysCFQVLE2kqISil1YsHARbs9kE0mp_RvQ,3164
52
+ attune/cli/commands/orchestrate.py,sha256=pGJRschCayD2E2wimTG4zXYQxEA1Kk7g_sMQFdeXM48,6541
53
+ attune/cli/commands/patterns.py,sha256=-f6ZDrUIupZPmdjM87qitxRpBYMns1KFyiC9okq14vI,7917
54
+ attune/cli/commands/profiling.py,sha256=LSv3voDCqLcicQkVR6jk-u8YjS3A4vOCdPA-Cny7jXI,6017
55
+ attune/cli/commands/provider.py,sha256=o1vDEIxjE6qhpFl__yx2qeiMOqkR2zDUlrCdkcrEANs,3077
56
+ attune/cli/commands/routing.py,sha256=BwuGBVKQ4S7szQW4ubce9pO5uLaxEoHHlpR7Uljcf5I,9896
57
+ attune/cli/commands/setup.py,sha256=0mS_ya2hQ3ZEQH9CYoozBoVWErVr-5aQ76G8NEPqXu8,3447
58
+ attune/cli/commands/status.py,sha256=rxjQQrrIkpSLLDUOPf1OJI7MHxs36NZcVGBVIgVNh6w,8282
59
+ attune/cli/commands/sync.py,sha256=IE9kdpUl3G-Ep3XlZcZc_5JeUmGGfPxBpC2g_cp89H4,5086
60
+ attune/cli/commands/tier.py,sha256=ztb7GisxmlQWuoVrc7QRblKp5pM9bsLpZUBQBfM3Iw4,3737
61
+ attune/cli/commands/utilities.py,sha256=CdsQ0vyW9QpN2mheLlOTpaInqAJ-JO1jVS6mXuA_on4,3717
62
+ attune/cli/commands/workflow.py,sha256=W2Mz5oyWZChCpGBonfbSlmSN5VQcjnO9nj8B2c1aliY,23549
63
+ attune/cli/parsers/__init__.py,sha256=Oihx1jb5wN_4GS3RxZiEYhQhglI44idOOlFJs9a6e5g,1677
64
+ attune/cli/parsers/batch.py,sha256=wSutRqerJZxUNVNIotU9qtI8EGP6IzVihEZUViCItCQ,3236
65
+ attune/cli/parsers/cache.py,sha256=_SpFE48JM1xfAvb_ndqYNR0bP4EyMb_T_PlmIsIHf5o,1797
66
+ attune/cli/parsers/help.py,sha256=I3QFDVABxZpYDCJ52GNWwfQlKEdV72Yr9A8spPHqUqU,1642
67
+ attune/cli/parsers/info.py,sha256=525oPlxKkOJk8tra_a2ga9DKm6VtejQUBWzBCDQK1v4,989
68
+ attune/cli/parsers/inspect.py,sha256=qLx7Qr1Gs2xYd9BkwRi4MR_l5QkPHZS2XOVKF-n3TSg,2423
69
+ attune/cli/parsers/metrics.py,sha256=ISV9muZ9HhbIYY8T9OeuA3jKvkYyXW80bY6ELEEFgnY,1102
70
+ attune/cli/parsers/orchestrate.py,sha256=kACmZExVIJ_F1cBRGOYtSxf8AWy_k1n3GNTuDIsxNVY,1769
71
+ attune/cli/parsers/patterns.py,sha256=4Jy7A_iZWJRnIdPUi6vz2tl2_agkhSgpNv8LlEoUScI,2374
72
+ attune/cli/parsers/provider.py,sha256=fh2YGIQ0LOP7Lb2LaphOQFO01rWDxhvCprXYWLy7YXE,1115
73
+ attune/cli/parsers/routing.py,sha256=YJ4W_UISXCOpvb7xp4GZUbJhBpKDg5ew7izJSzq8B6E,2884
74
+ attune/cli/parsers/setup.py,sha256=WwKd1UEFAQ9-AyMumVbRmTHSFIl_9O_8xKzefYi_UCw,1104
75
+ attune/cli/parsers/status.py,sha256=Z_r-C92hcrJ3iBmSok6iEkZfYDRvs7_3WD0oQQULzDw,2370
76
+ attune/cli/parsers/sync.py,sha256=fYXJDJTE1_JYdc15y7bHJOalCnB0Yg9ZkQQPPTUMUIo,884
77
+ attune/cli/parsers/tier.py,sha256=CjZaQvvFcUwmmQ7xpnuNndV3sDAs1I-RM0ztCvQFgHs,1152
78
+ attune/cli/parsers/workflow.py,sha256=D3tcg8n_rJVO6cTHrs2tmOYMiVywIifebxGdkZBJNtM,2600
79
+ attune/cli/utils/__init__.py,sha256=Camy-FBFwcoj_xS67lR_rOTB_mFD01NyB3b3cruMbj0,29
80
+ attune/cli/utils/data.py,sha256=gu2ZhF3b3rjQK1Te8UIJ0PqZkaIHiQsuO4VtPThqDUg,7135
81
+ attune/cli/utils/helpers.py,sha256=jbGhpkIlgaviZ_7DNaEUnu3ZgkXrOh0KrUPVa2sxWUg,2220
82
+ attune/config/__init__.py,sha256=HQDPMUqEgGrJvprhtydEYdNzSoVFmVGgzgTtoWRnta8,1691
83
+ attune/config/xml_config.py,sha256=he7wvXaHgX0a8NhcexG5eyGXtkeCtoeA3lqPHfzXlPw,8892
84
+ attune/core_modules/__init__.py,sha256=jUbjfT2UHOLrJStqvIPqxbr02_2fofqTYqGdXvKxwFI,274
85
+ attune/dashboard/__init__.py,sha256=8H09R2SEyNaspr04Ln3wahisttc5U-gkvKoibIcmNm4,1400
86
+ attune/dashboard/app.py,sha256=TYArbaqtiWzQdDZUNJAoHtdSjMZ-F4uSCPMyLMUgzDI,16139
87
+ attune/dashboard/simple_server.py,sha256=z9R6swMiP9dI_DVjMjdRYa8_hJE-C2nqgLOSRXrd9Rk,16058
88
+ attune/dashboard/standalone_server.py,sha256=-hvcidx-sA4tOy4K8MPCzcazNOzmp2oXQdMBL8mPZ9g,20854
89
+ attune/hot_reload/README.md,sha256=rPQloTKrb_SBdeA48fZm-ry2X-BCrTEc2bET7_OWptk,10397
90
+ attune/hot_reload/__init__.py,sha256=Aos2tLSKRzOLr5zRomLyzrz6qDRd1_PlinI3vrJcCTo,1642
91
+ attune/hot_reload/config.py,sha256=Lk_5bShouV-Z_atOvgcoPas4wwXwfHTKK9eSC60C9Uk,2290
92
+ attune/hot_reload/integration.py,sha256=UX5XnxRyPTlhHbwToGd8nwlOPBo6KHA6T5gMyZlUEO4,6825
93
+ attune/hot_reload/reloader.py,sha256=xjecGV0IWjaP5yPAyTbFSRTiEmq-hqap3bOJeAnxJEE,9509
94
+ attune/hot_reload/watcher.py,sha256=BZX-Iq9ktOHQTHfEqe1ybRK_BJHPeR_965bzKd1Kwm8,5268
95
+ attune/hot_reload/websocket.py,sha256=jH4I1nHQqXV2ixkjcG42YVB7SCp5h3WR-tujbrFP25s,5092
96
+ attune/mcp/__init__.py,sha256=sPlDBlPPxv3K7ywx6c_lDT0s2Q-BLLG25-dEccp0dug,287
97
+ attune/mcp/server.py,sha256=wiZAlJoOl0zzt0PYTMTbJ0qZ1DNwtsO8K3nBRUhWm2E,17969
98
+ attune/memory/__init__.py,sha256=ny832PrUJKQwi7b0DWMjK-iXaXSAEfYiuoqvfI97Vf0,6073
99
+ attune/memory/claude_memory.py,sha256=XpB4GX6SVg8pAPIlzk_Voy4mL-2EdL0_jpqMeNhMErk,14992
100
+ attune/memory/config.py,sha256=XGBBdj_xLDvEAYY9J5rDjDpJ7S-DiI2DYCcppNlsnlg,6376
101
+ attune/memory/control_panel.py,sha256=SMbr0wZj__dI0Hdl_K5ONVHmrQsC3ME9XSctR9RFTe4,43476
102
+ attune/memory/control_panel_support.py,sha256=mQ2Hmsk-eyqpCqNCmweCOXBQzoMbzAGLgQ8EuSNGRrU,4190
103
+ attune/memory/cross_session.py,sha256=WEcEV3pEjayWfiLIL2d5Y4Nr_EhzNkLpS1x1AqyysME,26897
104
+ attune/memory/edges.py,sha256=O-GVRS9q12-NBGVun8FUbEHE0y3CjHCV1s_KrzC_WZw,5934
105
+ attune/memory/encryption.py,sha256=onZIElhiBBJQ0snIxWnWT9zfzV_g7JPrAMXYNmEUoiY,5140
106
+ attune/memory/file_session.py,sha256=YMEh7UCqViYDNUP0tznJo3Ow2n1AuuRKzUZaCZBw3e4,25980
107
+ attune/memory/graph.py,sha256=8J7YUpzPnSLlaryAFpcPloYD3gOJd0dXbiH3Kbf1ix4,19019
108
+ attune/memory/long_term.py,sha256=6EsS1yYNRpciKly6zsbZ_opH7WM7NqKGxZ3Ikf4MQjM,32438
109
+ attune/memory/long_term_types.py,sha256=tkzcQUmbF-DQEYpjdy5uqThPNI_wK15y96rFYk58e3c,2870
110
+ attune/memory/nodes.py,sha256=h71kV3x2ALzuTOdrB7LQswZWai71HzGHKlFBzf7TwrI,4795
111
+ attune/memory/redis_bootstrap.py,sha256=4WVwi60dWoU9g6aluhkojekW-MqkrVrRMXjB_N4vOCQ,16504
112
+ attune/memory/short_term.py,sha256=mGOHU7siLNxOkaNF_pTyDxv_CiZAoHH9xiLh-LUZxtE,71956
113
+ attune/memory/simple_storage.py,sha256=-rduhEzAN3zj7p_W1ZV9-xWweNxxX0wUv-7lxyLBS90,9833
114
+ attune/memory/storage_backend.py,sha256=O0IWik9PKwo_x-wuhzx3SN9MKet3F6tmc6_wIOGJLGY,5042
115
+ attune/memory/summary_index.py,sha256=7m_m2xH3KMBJWRJFvk3hAws_tgPD4VCfFBxwAbV9fCo,20777
116
+ attune/memory/types.py,sha256=MvF82iV9Tb5Wui0PKZGwPTVU4cK977qWOdCKHFkCnHY,14542
117
+ attune/memory/unified.py,sha256=nK3rHBVct_EADRhIHp0uGOsqC3lxTuA8d7NukK0OXX8,6798
118
+ attune/memory/mixins/__init__.py,sha256=QhddBtH1TiXrde8d1lUhLSqPrSPK8y8rozSBkXWMV-w,745
119
+ attune/memory/mixins/backend_init_mixin.py,sha256=BINJ_XYHA1GZI1HCEPgXuB5Yole8F-__5sky6nKEKRo,10279
120
+ attune/memory/mixins/capabilities_mixin.py,sha256=i5UxT8ZyEhnZLASJKm3qm5_C2G18ChdcOmBo2CfRkf8,7094
121
+ attune/memory/mixins/handoff_mixin.py,sha256=6p0RKLWykV9Ja0YqY6KrsqnIHB1DqOa-Zb0swYttD3s,6934
122
+ attune/memory/mixins/lifecycle_mixin.py,sha256=zOUpyl0OI2rF49ersLpG7nYPH87rW7-4Fsp4X-VCIas,1356
123
+ attune/memory/mixins/long_term_mixin.py,sha256=L0O3kbXU0ymkHtrxoU52u0Efw6j3LHqYNBDNzgAOjpA,12328
124
+ attune/memory/mixins/promotion_mixin.py,sha256=cjK1S_OoIiLqv4W5NNyzLM1K6gnl6UJvucY1RPDQM-c,3737
125
+ attune/memory/mixins/short_term_mixin.py,sha256=TcGpHIjTxMQP-Y3lSmeh2bbmKmNpgza4PU_3XPfH2tk,6468
126
+ attune/memory/security/__init__.py,sha256=f_t-pFO1aHOE8uFJ0icGaCt2xCvWx-bFxBcv9U3Cu3Q,868
127
+ attune/memory/security/audit_logger.py,sha256=Rdz-9ptRDjdwoqtlyg5iD-zeFMO5C3c6bel9V-QZp-U,34255
128
+ attune/memory/security/pii_scrubber.py,sha256=ucPdE_ZEObR3T8hPK--tabdzLDumZQV4YUfislELvCc,21563
129
+ attune/memory/security/secrets_detector.py,sha256=bJsXTD95yEnfShDMxvCndzF8X7HNvkJamLXmkvWwpbk,22775
130
+ attune/memory/storage/__init__.py,sha256=sPLdecYJ1z6nZTIl8gmbozjdCPp0SZLKsKoi8L1xhcE,480
131
+ attune/meta_workflows/__init__.py,sha256=pGueKuKdwypbXeC_JMYba8nBR80exDRsP5Kjid4HDK4,1817
132
+ attune/meta_workflows/agent_creator.py,sha256=gkCE6hxGyk3vLj4WH0NwfA_WgmtJpoH2WwGUPQYkIzU,7975
133
+ attune/meta_workflows/builtin_templates.py,sha256=WrD606ZSLLkT8r2rXKmgulmkhc9VuogWXzVRC2J30Pk,20718
134
+ attune/meta_workflows/cli_meta_workflows.py,sha256=w-T4xJIgjUw5yVFkL5qqWjALA0MPHTqAOFkU8dhQRgU,1393
135
+ attune/meta_workflows/form_engine.py,sha256=pnlLcdzTkEENCLPaMp_2_I5M9Ooj2RvPKSn3F3jjUFU,10773
136
+ attune/meta_workflows/intent_detector.py,sha256=rMCQwBZtLgylr6nDxXr4OyvIbgPuORzSR_TNYvafYUg,12943
137
+ attune/meta_workflows/models.py,sha256=v0Fcw4HMqhV5bl25H-EMhROWKfym_c9tIyc5nr1Ch38,18923
138
+ attune/meta_workflows/pattern_learner.py,sha256=VoJe_1PYFZK4_9UK_YKZ5vR-6DWUUouqEa1cEsvTjSU,26368
139
+ attune/meta_workflows/plan_generator.py,sha256=Wtb-JphXd_lJDFeOjRdxMzgnecDrsA3pjo7hF-IgFLU,11232
140
+ attune/meta_workflows/session_context.py,sha256=U1LZQO4Fl-jm6Q14FF85oPeYfkwVl15ajq70xyo4Rgw,12330
141
+ attune/meta_workflows/template_registry.py,sha256=HBehRIzKAH1weN5BQ69WLCwoxf1FwZYVIWH6qNP1huo,7476
142
+ attune/meta_workflows/workflow.py,sha256=wJg5md3QtgyyscyAEDYMZY3nCLo802MiJPYhCTvCDUo,35964
143
+ attune/meta_workflows/cli_commands/__init__.py,sha256=qWdPRbusNXlrMPZNV-laXqxkT-o7hzNqhoam1OxMCag,1505
144
+ attune/meta_workflows/cli_commands/agent_commands.py,sha256=9TQORpj0MLu35GgQXVooE3UNYFd-oE68YbHy8l9o9hs,11296
145
+ attune/meta_workflows/cli_commands/analytics_commands.py,sha256=c-bTkxyjyi8E48xQNnJ7ZABOqFMJNS4oj6Ui_zRw6WM,14448
146
+ attune/meta_workflows/cli_commands/config_commands.py,sha256=8q1mjaFZrK4BxfrSP03VN3m6AQnVK1SVu43dynqhSf0,8700
147
+ attune/meta_workflows/cli_commands/memory_commands.py,sha256=G-T51dX4rkY5g2MyTE52WyngtmEwM-61zbzmxzAASOI,5557
148
+ attune/meta_workflows/cli_commands/template_commands.py,sha256=Ydv-PAtGU1EiilXR13EP06SDiW22HeyR8sQ1LlCLFDM,12972
149
+ attune/meta_workflows/cli_commands/workflow_commands.py,sha256=VwpsQeFptRiYWoEBantuTy51tAphQO2Wc0mQXVu9I00,13331
150
+ attune/metrics/__init__.py,sha256=8J_0y_klwQM7-CuYDlXm3IWEWg7NT-pqeZxTTKReP4A,365
151
+ attune/metrics/collector.py,sha256=WBrUklvZ9T80a5iz1XyRPvmteMOpftqBYHdBb4DpZao,766
152
+ attune/metrics/prompt_metrics.py,sha256=GKS0xb_8IHpv2QcSEYMY4d_OvU1-9-ZcjXPFTDtXHmU,6512
153
+ attune/models/__init__.py,sha256=ZnS2J7p7OChlAXv0NB4_DZKQr45nX2Ldhz72EE9BLjY,3919
154
+ attune/models/__main__.py,sha256=ttN5E5Mpx9KQOIz_tmOYwprYC_0Ru5y7eU4v6UABFdk,280
155
+ attune/models/adaptive_routing.py,sha256=RxfI96opkIY8sodf03BdGxG8cLeiIjWfRTRVIoN6k_s,15220
156
+ attune/models/auth_cli.py,sha256=T3N2ef7IECU2fSsP9FMMFmPj3kJuXy6Wr6TlwJAMM4U,15738
157
+ attune/models/auth_strategy.py,sha256=dvFxBWP2IynBWp4-cNoveg_m6lxN2w-Dfdd14B5sTfU,15456
158
+ attune/models/cli.py,sha256=c54oqbjDoeQCrA6C1wy6OlyKTfJFLyjZx2Nf8SFekNY,22188
159
+ attune/models/empathy_executor.py,sha256=szK2VgJ0pKt-fiNvoRrnBF4gV1qOetvjbhmUjAHBIhc,12687
160
+ attune/models/executor.py,sha256=TLJixpVfbt-Xbl9lCPIaGg0UJe1m9wHaEOezLtjtQJU,7475
161
+ attune/models/fallback.py,sha256=-wX0vabHxqriR1IUYVdsHTxJm56kXUgO81IEvgmngCQ,25804
162
+ attune/models/provider_config.py,sha256=rQBTQJwg_35IHwVbxT8mM72bV2LXTf08PITugr3fDHo,9220
163
+ attune/models/registry.py,sha256=JSwt6Sv8AQD4Y9cZbz6viAIiTDiwFDYW6BDE_NO9wBI,15538
164
+ attune/models/tasks.py,sha256=bVbxYXuf6OyyW-R5l68rSmtm80YBNpPaf3N79nXq_Gg,10383
165
+ attune/models/token_estimator.py,sha256=9egCxtPykq9sb-N2EMyE0u25zDhtcZWxlHHnB-QSErs,13466
166
+ attune/models/validation.py,sha256=lThL50UPq3OQaNBAH6qcZHkw0MAmIEsEGkjTWtDLGaU,9148
167
+ attune/models/telemetry/__init__.py,sha256=6UHe0Hrhk2ntUqFp9k7QwDOmsk34qwSdsQF69O8_deM,1592
168
+ attune/models/telemetry/analytics.py,sha256=zX0qQvNuTaqAiEB8XltRpV1XJ8qDO9K2m1MD4sbQF_Q,19753
169
+ attune/models/telemetry/backend.py,sha256=woR3nKxoTdYUDXXZrOV5r-ZHFod92BxbqCU5g90NGQk,5631
170
+ attune/models/telemetry/data_models.py,sha256=bxkX7AhWTWSLMwz4W_b9qlcctih4Joc6bJDLRv0JcOM,12203
171
+ attune/models/telemetry/storage.py,sha256=CtOpHrSd3SsUej_JDeVwQNDCQhWuSfUlEEOd9ayl1FM,15408
172
+ attune/monitoring/__init__.py,sha256=Gatsq3HmC0VKQDNUPyXdMNgmZAzqWPu_4YIABbSaVaw,1498
173
+ attune/monitoring/alerts.py,sha256=Uxdw_W_N4QoSiPe6BN2z33QSlPPnxkMGb1HNZfu_HTY,30278
174
+ attune/monitoring/alerts_cli.py,sha256=0FbqnIeoU-nHCjLSd--v44lLTj0Rc8Nqq-hYqevsJTw,13593
175
+ attune/monitoring/multi_backend.py,sha256=qTNS08Vi1fBPx91-UV2tEZzE1gFTdC3Jn7MdX1D_xF4,8452
176
+ attune/monitoring/otel_backend.py,sha256=diU-y2CnbN2uueod60hr-wOS0s6ECW3SOfw8NhQOdDU,13499
177
+ attune/optimization/__init__.py,sha256=HJjf3Lxuj4GAxETiqwasa17sLs2W2hsEe4CSUCZ9mh0,418
178
+ attune/optimization/context_optimizer.py,sha256=lPWXuG7K1OMVNZKOdQT2SlZhLfjMREKSp5pCPQibXpk,8048
179
+ attune/orchestration/__init__.py,sha256=Uy5izPrSxWRmsu8zhXe-tr6zRTL_vH-A8NnARoEg7Yo,1816
180
+ attune/orchestration/agent_templates.py,sha256=eGT_NeIW3lS64En_2L5QccJ-bocdETk2uu1T3v74Dlw,22113
181
+ attune/orchestration/config_store.py,sha256=x_eHL0IiN-0SnUAPXzSmslOIB1a6zwBQSMQgtrcgfPM,16767
182
+ attune/orchestration/execution_strategies.py,sha256=OF76lpkYXmlzymG2zcgltwWr2wq_0nIKldlKY4nof2k,72882
183
+ attune/orchestration/meta_orchestrator.py,sha256=IrmYnwadHPQoSCrVuMR65ixjVPbY4xxAGJwJRslmJeM,42154
184
+ attune/orchestration/pattern_learner.py,sha256=HD0TDypZS88Tbw0J1OPaqRpZe1EGFRQTMAP2GDrSnpI,22685
185
+ attune/orchestration/real_tools.py,sha256=f3lLyfz5e7TbEud81bzD-WRQR-n8JRtmeLi3rWr2KuY,31779
186
+ attune/patterns/refactoring_memory.json,sha256=nk7Bh2QE8Zm4iz3nxzARYiqzBWqZrKXhypDHPC63f_U,2995
187
+ attune/patterns/debugging/all_patterns.json,sha256=0nxtlmJzqAn2fV162OgoTWtWXiJNzcZ04_uIRaUqC6U,2283
188
+ attune/patterns/debugging/workflow_20260107_1770825e.json,sha256=hfXZX3baBGXrVfESgze6JcIDL60TCQdE8k_4uZ0fKcw,1951
189
+ attune/plugins/__init__.py,sha256=RE6ljx-oJjbiz38q0yzK1j2rrpxK6ahD1TVNmbz4k84,586
190
+ attune/plugins/base.py,sha256=5i7nJx2BQpehEgE8oj4RtF9VqbBY2ibTRKg0qBbDAlg,13163
191
+ attune/plugins/registry.py,sha256=OpCIOe3sGGf0yuybsrmiDA71_PVkIt7xvcFOgzcpg08,8151
192
+ attune/project_index/__init__.py,sha256=K4aV5kh3ZsTw5MAEisNx8O32ZLRaaDZ1Hn01iGSmlpw,814
193
+ attune/project_index/cli.py,sha256=uCSZJtK8R73vZiG1a1G6g1DDRD-x05cDVeWlbyNAltk,10226
194
+ attune/project_index/index.py,sha256=8Bze0LMBSLSUIRK4OVUHFhn6nh_5jotojkzwB8uBtNg,23477
195
+ attune/project_index/models.py,sha256=_m12jDd4qAzsf5aVVYTwrL36GDor04i4QJobEYLqAMw,17626
196
+ attune/project_index/reports.py,sha256=MTs2JbMx-mDR6RCUF-KRLkdf5wZOw7AsntdHTH2tcFk,17043
197
+ attune/project_index/scanner.py,sha256=cen_vjhmn8d6BeBEDEjRgRfAWh9h7gvc0HnyqpBhKI8,31323
198
+ attune/project_index/scanner_parallel.py,sha256=E3JhdYZ9n-foUdW_HusU3T94Sb1NC9NuzPl47LMhU_Y,10015
199
+ attune/prompts/__init__.py,sha256=1fpr_gGi-lOhnVQOh09vGuwt-E0S_GzL3GWWSs8LfRY,1550
200
+ attune/prompts/config.py,sha256=aV_NbUKwtHJJkggvGSykHApor_EaMJSkAGM5IFzd3NM,3009
201
+ attune/prompts/context.py,sha256=W6u6P5oXrZb3a0vBaAkQovQh9SpPSIzZLNmw_ADqFUw,5948
202
+ attune/prompts/parser.py,sha256=tcv7Rnk2CLs9HzrP2ivSa4INcG1O_hcGu8Mz_CajFtU,9511
203
+ attune/prompts/registry.py,sha256=njqiDhtifdtNpAQQLx4W3KGCY4SyHFJ7D39dvdWs3U0,9675
204
+ attune/prompts/templates.py,sha256=hxW1tiswqdYABITFc3UHwEz9FzYQ0Y961svZLcEFjnk,6231
205
+ attune/resilience/__init__.py,sha256=ZCiNrt8cQmdGNP4u5WM7cpu3-HxMuOt5fvCHPe4fVYw,1337
206
+ attune/resilience/circuit_breaker.py,sha256=J027bGta111L45G1G_9zgy8Vz7bSjgH0JX5dt_-t30E,8865
207
+ attune/resilience/fallback.py,sha256=A556PAVsfc1q3g-__gCNjnLdH0PpNKg9EukLk2FP3Ik,5664
208
+ attune/resilience/health.py,sha256=3ydI6VVk8cs0xFvHXSIY2AiN9BpUqiRc4cznZ62hbak,9286
209
+ attune/resilience/retry.py,sha256=VXIEOq59Kw2bOG2KwNjo2qeV_eCaGkxFR0OCk4q2CFI,6581
210
+ attune/resilience/timeout.py,sha256=qBlC7mUoOyl2s1KXG88kF0rF5vykEXiadwTRBQuGZCA,4119
211
+ attune/routing/__init__.py,sha256=WyavHBaeSd6X2FmXw5LlvNZ8qv5S3T4d7yI3EtpjMBc,1166
212
+ attune/routing/chain_executor.py,sha256=KR786wrSPmXx78_u3M_dGnh-Lt7PZGaydvcOK3XUn8s,13244
213
+ attune/routing/classifier.py,sha256=LwRTPP9BQt2FSsIzQMDSiWHAFpvJAfvDW_EUsLgQjxc,7229
214
+ attune/routing/smart_router.py,sha256=L1UN3pEd7Pr_BGKy13_-EEpkvn5eysz5is7XACa10zY,7412
215
+ attune/routing/workflow_registry.py,sha256=IOOr6iAg9Gc3Hn1svSDPH3lOfVAfGUE9U3kB1KEtCzE,10220
216
+ attune/scaffolding/README.md,sha256=krpjZ_aIldpCWpxiUONmYQklAsBqqG1tQ2ZxDGkX1L8,15877
217
+ attune/scaffolding/__init__.py,sha256=GOlcRgoLxKgFdxhjbClMRbk9N7NMfDtyC4L3OKVrwG8,993
218
+ attune/scaffolding/__main__.py,sha256=zFLQKRd8aRrT6zWKFCE8t5lhR3P6za4eWuZm2r7gVUA,282
219
+ attune/scaffolding/cli.py,sha256=uxB50ItugsWKBKjbEgmY35x-KnwE89Smz7T4uXFzLGQ,6764
220
+ attune/scaffolding/templates/base_wizard.py.jinja2,sha256=mmBiCvG3EXxrWtHmW_6yxk4bDXUZcwxD7tHZwBs3E1U,3078
221
+ attune/scaffolding/templates/coach_wizard.py.jinja2,sha256=rl9uH5uhRnkeAcuE3mNJEY8kc81pU2SLp277Kf1kFAo,8764
222
+ attune/scaffolding/templates/domain_wizard.py.jinja2,sha256=t-UMAMsc95j10n832ts4Z8sgX4I2P3uGBdOj-AH4q34,11613
223
+ attune/scaffolding/templates/linear_flow_wizard.py.jinja2,sha256=Db08gFxWWfk_q-58qzSUClGZOgBZoaRzKkq31JijSPA,5421
224
+ attune/socratic/__init__.py,sha256=yDRfA-AkrNWlCSO0LvqlX4gnnB0Nmkul6eqV2Ha-48E,5994
225
+ attune/socratic/ab_testing.py,sha256=477OISyMCuwaeo8g0eSqIjNZ7DNH16TuSYscdMSS1mI,29960
226
+ attune/socratic/blueprint.py,sha256=EusEbiSlwpyifDUmFandFRfjBIRbYGHIDmL7CbSJJns,17280
227
+ attune/socratic/cli.py,sha256=kEYlDo95B0eZKQ1KEOFA2dLDiqMaxsxgLomBorCUYdA,21321
228
+ attune/socratic/collaboration.py,sha256=l_IG1G4YXKIOsJqLnfEv6MJxaqsNTQ21pTvsHQX-XwA,33466
229
+ attune/socratic/domain_templates.py,sha256=IL2TTlLEKZRWNDRiYOjj7w_2UgrWIZ5wVJJLc47cXXE,30265
230
+ attune/socratic/embeddings.py,sha256=3rzaDITtd_dYmVNrqQ2bNCkaPNQHtfG-I6-1ntfpph8,22985
231
+ attune/socratic/engine.py,sha256=XCPnDbag18P_Vg6MFmtd6utEk205vTmQhEOYEwCC6D8,26458
232
+ attune/socratic/explainer.py,sha256=aNH1RDdJn_OiseI5F4UgoZT3gt5UN6QXlh-709ojS_8,23847
233
+ attune/socratic/feedback.py,sha256=GIF6aGN0YunVBz2tgnFMZCroqmWJbjkNxEt-Q0mA_A4,27206
234
+ attune/socratic/forms.py,sha256=DxQW5DKk-zDp_B44OQGJ1lWtGoghhXxTz5mUAmZS8M4,19117
235
+ attune/socratic/generator.py,sha256=I5-MKbv_JYAL6l_x4ttekiVdB26AjErv-LwZu_2hSjc,24573
236
+ attune/socratic/llm_analyzer.py,sha256=IP9Wuyiw10s6sccY3WvAI0HBrmJ-fl7YUkJDbai_VS0,21234
237
+ attune/socratic/mcp_server.py,sha256=jGEcjUPTiNqV5G1oj1XAKFZsAftc_mrrsPGik6cXvps,24535
238
+ attune/socratic/session.py,sha256=AEArKUobfSBZ-kMKTt3yyWIobvVba_-xuy-kXQBxHXI,10087
239
+ attune/socratic/storage.py,sha256=4rF66lFfE1I2qXOxRMWfduBzDxQLYniJBRy9Uu5-CGc,21741
240
+ attune/socratic/success.py,sha256=wZoHBkfkzmZwwbEMNdUj8cWw4nLCyKFtGNcWHJDoV9E,24770
241
+ attune/socratic/visual_editor.py,sha256=Nk2vJaTKtcwhHH04KTzRnAVyae6AeA03je2-y74d1kk,27912
242
+ attune/socratic/web_ui.py,sha256=Sg7pSS1043ecVt_yYpSLnv_6pvGnt6aM742fXq6uJ7M,25375
243
+ attune/telemetry/__init__.py,sha256=DpNi4Eglyj7mAA4XT3GFpidnvvbVNC7Qo1Te9Q5wQ44,1295
244
+ attune/telemetry/agent_coordination.py,sha256=oQHnKZO_ia2hogyMTlg18hPgkSgWnFtB9J-WexSjKno,15834
245
+ attune/telemetry/agent_tracking.py,sha256=PZo_jHm2VQKlTVxnhEnz5GfaABHwuZY4Bb0E50vOTeU,12312
246
+ attune/telemetry/approval_gates.py,sha256=M7tJdpg0ygkmOx9HkQ19tCfexnMe23mZ2N1PQchuP5k,19068
247
+ attune/telemetry/cli.py,sha256=ex8bl1ZEGiETOD6oqCcz6PVV10VoKxFI-Oe06Z_-Nm0,45500
248
+ attune/telemetry/event_streaming.py,sha256=sl8m0g3stTQJQNyuoX5ec-zNoh0oro0vGe6Q6mTR-zc,13393
249
+ attune/telemetry/feedback_loop.py,sha256=ikvqxy4CnYdsFpizMEn7hypRaAQsubflOyDDuHpjhK0,20054
250
+ attune/telemetry/usage_tracker.py,sha256=drUOWJ3R3MkYGF73fLYwZtQJYvJCbahc4-kpgVKzlCE,21182
251
+ attune/telemetry/commands/__init__.py,sha256=UVKjQBaY0bd8iTlnbQSpd8jA_CjOCfPLGqmplt68P8c,338
252
+ attune/telemetry/commands/dashboard_commands.py,sha256=kV9Sr0f1N4edymNnheiVehSG3xVTFfUhh5lJUfh7-Kk,24021
253
+ attune/test_generator/__init__.py,sha256=lSck9qlC32AO8qoQldk3UjjTRDPdAUgIOHGa-WvzCqI,919
254
+ attune/test_generator/__main__.py,sha256=YY_HE1xg4zKZkHHAd6sSzWvJCvLFOtmpawCrNlGjWAc,345
255
+ attune/test_generator/cli.py,sha256=B08zskLVxVggusxLo660k0VZ5QY1mnPUZshuvQQdZns,7258
256
+ attune/test_generator/generator.py,sha256=NvC-eaFhmmXEOrbbdAnnJALqSovMvtFL2kro-raWZvw,10908
257
+ attune/test_generator/risk_analyzer.py,sha256=Rn1TlXdjU5WpAQPNutSL95_0WxDmfOsbVY-ZMo3O0pY,7516
258
+ attune/test_generator/templates/unit_test.py.jinja2,sha256=BNwY81Sp3usPCFXJg2MFFuXB2yig_9XYeo_wx51EppE,9278
259
+ attune/trust/__init__.py,sha256=tJj5h5mYsfdWg_xmnHPonKZfTycYI3QlXDUQSjRLEtE,651
260
+ attune/trust/circuit_breaker.py,sha256=fywWzs4GBz9TL3tma3VHjOVICdbqGqul_-7dKE0iHx8,20712
261
+ attune/validation/__init__.py,sha256=slVzhf8ZXQE1gybIZ7fRteDYDEts3zOogCunXZxlMxg,375
262
+ attune/validation/xml_validator.py,sha256=iJJnegxeBsd_GkcbXUAFqQnXUMT3G2FZpqfE8SWjQHA,8772
263
+ attune/workflow_patterns/__init__.py,sha256=_-WBXqz2Fhh5lakUFtIDD8ikaxvwugiaicHRf50pIUs,956
264
+ attune/workflow_patterns/behavior.py,sha256=TrAAIfM6Zr2ZhSzyHRYvixECBIuD7Tv666x3XcbBhdY,8413
265
+ attune/workflow_patterns/core.py,sha256=H52xnB4IqMdzJpOoySk5s7XcuKNTsqAt1RKpbdz_cyw,2607
266
+ attune/workflow_patterns/output.py,sha256=EyioUYeXGQWllZdJXHXv2mLwl7fMwihrEb8D1SG6MxE,3090
267
+ attune/workflow_patterns/registry.py,sha256=0U_XT0hdQ5fLHuEJlrvzjaCBUyeWDA675_hEyvHxT0o,7461
268
+ attune/workflow_patterns/structural.py,sha256=zAm5n1ifngAWiVasulljEeTkWgrrvYrd7kEFfTwXpqo,9423
269
+ attune/workflows/__init__.py,sha256=kUEbqKuby0qIikiBPmK5HCkBn1N3sSXkD3_L9UUu070,20359
270
+ attune/workflows/autonomous_test_gen.py,sha256=PTQGlX1K1WJhkT9uwv0S7ybo10VGRofxlIYzeISjCM0,47444
271
+ attune/workflows/base.py,sha256=SKsQWxAWRQ046P0Db3sLN2U5bFKHA39SWt2J0c271uI,99410
272
+ attune/workflows/batch_processing.py,sha256=fhvACf8gIZ6sUSZtqOtITzSHuxggnFfQ6aS0GbthGlU,11583
273
+ attune/workflows/bug_predict.py,sha256=N5AjEQ-eJJH69tTqlEyQ2khPXR6IlleOLwJI9gDZVkY,40464
274
+ attune/workflows/builder.py,sha256=gaPPFoiToSx3EznCWV-iBc7wQef3F1ODs0kGjjb2esc,8603
275
+ attune/workflows/caching.py,sha256=SnFyEZJCVpe_ijGldW2MRjzNL-Hd8Fj8Sbb2HiuxqT8,8126
276
+ attune/workflows/code_review.py,sha256=2V9De7bw6W0xnHg-fxPjwQqxWJR04omPFz0jNUk3jOU,39407
277
+ attune/workflows/code_review_adapters.py,sha256=iq0JwDg8svFJkkjinVwz6mZhZNFkgQBVNNa8632i3a4,11148
278
+ attune/workflows/code_review_pipeline.py,sha256=m-LWxE8MHzn0HxpHmL0ntssWTcDRxscVbAIB1OTwL3g,24460
279
+ attune/workflows/config.py,sha256=fUy7Nfu1LzJdajOyiRK39eKSR72zwndUVGSRoYj40aM,22833
280
+ attune/workflows/dependency_check.py,sha256=zWwSCAWThnAUkOqEUx2GTl5Vgf2fW9P5HRqwWhYZXlc,23452
281
+ attune/workflows/document_manager.py,sha256=z_r7g2iFXgyxDZebbVJ3ArbYi8FNvJip-Sux_qd4diw,7381
282
+ attune/workflows/document_manager_README.md,sha256=4vAQ3-ENB2mxc_68dosG-cwAf8W8DWzHtOpaUzRWZKA,2145
283
+ attune/workflows/documentation_orchestrator.py,sha256=Pfs7nUKSsGYIjkVgOaTx3Ethu42FjdEftxAVcGUVKEo,43007
284
+ attune/workflows/history.py,sha256=80f2Ltvbs5MBbps4hp8JBBa7H7t-pd8z6YsA7SwE8xU,16463
285
+ attune/workflows/llm_base.py,sha256=VhKjXUVuDD_QdWKTN89R-owd4RkwqYsh7WcqYsnhMjo,10777
286
+ attune/workflows/manage_docs.py,sha256=W58FjauO2K7v6KENqF80txor-VX5f5S9py2HKfXtTh8,2123
287
+ attune/workflows/manage_docs_README.md,sha256=7ouxAkpcGVqBF_O8VKJGeANvP0jl5r0Zm0TwZyIsKEk,1903
288
+ attune/workflows/manage_documentation.py,sha256=TK1odUk_79cMj0AKGBjJ9Z_3n5oCOARj2MQ3lQgdKcQ,30068
289
+ attune/workflows/new_sample_workflow1.py,sha256=BRux1_UdG1MJRlsQvWQAr6Qocq_N2G5pTTMy76xceMQ,4099
290
+ attune/workflows/new_sample_workflow1_README.md,sha256=1pd--DASCiZlqMmcaq-FI_zIaGonNxd-4S6wZDnbMMk,2362
291
+ attune/workflows/orchestrated_health_check.py,sha256=d4R8iOvw4kQ_EfRdvNYDNrjjR6hzPow55fWSuLHkhPs,30486
292
+ attune/workflows/orchestrated_release_prep.py,sha256=Erp2rw-EBNOfIwyT0nJhGqpYPg2v-YL_h06aMtaALlA,20224
293
+ attune/workflows/output.py,sha256=BJHDdaYB7ptemZy8KHbuLkSmrEAiFCArjOfvQfRMnCU,12829
294
+ attune/workflows/perf_audit.py,sha256=KVSPJBgZJGlrTQtLQ71enUBHp7yr_Trgnf9yGlNZPQE,32064
295
+ attune/workflows/pr_review.py,sha256=lR7TxvGjBj1fIMxYgBtgxuSvWFTGqQHTsVpL5zKLUB8,26796
296
+ attune/workflows/progress.py,sha256=z_0UV2uH4Xu9fG85VYtcqJwJWQhTfa7WvFqrtIe-ISE,26588
297
+ attune/workflows/progress_server.py,sha256=3UmIW8j-Hxayod4kV9BoWPvJO8lNX38YVCq6UDEnYlQ,10229
298
+ attune/workflows/refactor_plan.py,sha256=mp8AHxS5bbH-B-SEJDkukh07xCISUjBBiSjecvLyf-8,25591
299
+ attune/workflows/release_prep.py,sha256=itcZWMqnhHeo4vVdXQa6Aqo054SqdoVnMlTCtdNnxfE,31078
300
+ attune/workflows/release_prep_crew.py,sha256=WNhpYqVztmZ4s_BLu_1ejq-uQELJFfqAKKk_dU33U74,33888
301
+ attune/workflows/research_synthesis.py,sha256=0G62CE1A6yG3rzlviKqWJrdWOMEaBZJouN5Rd70oXKc,13959
302
+ attune/workflows/routing.py,sha256=Ka9JD0LKHg_DvI7BS_3rnFp7TSitA96CqOzPWndsoVc,5002
303
+ attune/workflows/secure_release.py,sha256=cMhTT-iF_pTu9oS08QpWJBg15-Azx7AVA_ucRH_6bDY,21263
304
+ attune/workflows/security_adapters.py,sha256=VZNBvUMI2U4KfC84rELYAKxlL5Xi_xYUlFLDKRVveNc,10918
305
+ attune/workflows/security_audit.py,sha256=kPNoQ78q1B5ieNWW2wTedNiF-JZztaU4N3oEN_snlvU,52438
306
+ attune/workflows/security_audit_phase3.py,sha256=fVNeqTVqyJblYyflKikAFvq24qgd6owKiMZKvvqlZuI,11534
307
+ attune/workflows/seo_optimization.py,sha256=X8hg8qhIkqPazDcbYh7k_hyxze6aEk-nczVFckwMmnM,23257
308
+ attune/workflows/step_config.py,sha256=aytYrjGjY-7GaC0YNmQGJhelCrhj2CjwZg5DxsH1RaE,7197
309
+ attune/workflows/telemetry_mixin.py,sha256=hymB5I_-d6UC7fhMgkhdFWLAr8Nczr2yR1k44j-aJtc,10071
310
+ attune/workflows/test5.py,sha256=LGUrTScjgSx9bq9JhNt8ykJ16dZFUaOiH6rvgaNxs4c,3754
311
+ attune/workflows/test5_README.md,sha256=SgqhotqO--Mn7kdRcCXpiS1HW-kRCjFih6pjq5qDmNM,2402
312
+ attune/workflows/test_coverage_boost_crew.py,sha256=YQsqrDHknTlrrBTz8nsAiYYlwCdMeUpm5SicL4q8bl4,31041
313
+ attune/workflows/test_gen.py,sha256=3zshDv6xCXg1NIkqhMhxzxq7UvY4EYdkhAVxn6caLME,1311
314
+ attune/workflows/test_gen_behavioral.py,sha256=9nJPZI66iL-P16_xDhptGLJs70WTbBQi8uOKr3VkTko,15759
315
+ attune/workflows/test_gen_parallel.py,sha256=DmpaJoRaOD94tMT0_IShBui62cBS0OJvyafR_2wSzUk,12134
316
+ attune/workflows/test_lifecycle.py,sha256=rgLaO_WMU5IQBYcZVKGJSQUd2RCOlKA07F9harL0T3A,16886
317
+ attune/workflows/test_maintenance.py,sha256=x4uObZo6ysFwM-gzsxcNZ5WSLULX2nFS5MlMdzWRWxs,22946
318
+ attune/workflows/test_maintenance_cli.py,sha256=ZjZT6g397i_f13nvfBVro8VpT5klLNWxjoBaooFjEok,17859
319
+ attune/workflows/test_maintenance_crew.py,sha256=q-iionpUvges7AREh0VZU44_SU5IHM8VCTbaZ-p_CyE,29458
320
+ attune/workflows/test_runner.py,sha256=1_YFIg4Si39i5F_73r-35mIVc4qXXrJKMdkGWP0jrME,19955
321
+ attune/workflows/tier_tracking.py,sha256=LYel4EzsTcDIoPi02qH4sQn6oDoTXv9yrpneLQ0PJ9M,18968
322
+ attune/workflows/xml_enhanced_crew.py,sha256=fEZE0BWPhOubCyfEwDqQxIyUn8OuCU4a6OcnlU061ew,8996
323
+ attune/workflows/document_gen/__init__.py,sha256=xQpuahTnFqr1gFK2zkLE8P5RvPNTMbcF1xgiIH3RBHM,544
324
+ attune/workflows/document_gen/config.py,sha256=EpCAfV8mLJ9458aM2dYUEAgqcUlPIA6WWkFO-N-fSPA,1068
325
+ attune/workflows/document_gen/report_formatter.py,sha256=oGzpmM5Nea8i0uSSiiO-J97XDie-NnBBfgfZ9uvwDfQ,5686
326
+ attune/workflows/document_gen/workflow.py,sha256=i42IfKzMRdYDFzLjj1D03GiUNgoo45ldGhX76hPZRmY,56067
327
+ attune/workflows/keyboard_shortcuts/__init__.py,sha256=zPY6KTepKXmLF0xUsqxbH9qztHdVdsCzyY-_PiSnuxk,1116
328
+ attune/workflows/keyboard_shortcuts/generators.py,sha256=PIkHJ0WdqkOQlVAd09CPk0ANBvwBzqZYnQ6NSagdZCk,12900
329
+ attune/workflows/keyboard_shortcuts/parsers.py,sha256=aws4HSjqBOrl-DQEOV9WeJX6dyVp0zy-yl1o1rxmUdk,14723
330
+ attune/workflows/keyboard_shortcuts/prompts.py,sha256=gcV2F2bAMjZUrbB13lOI4ixXzXm2TNWEZ4VbPhC7ITw,9164
331
+ attune/workflows/keyboard_shortcuts/schema.py,sha256=MwvM63J9WTO6nqtwes5A04HH1dTa9XhJlD0SbFhsS5E,5806
332
+ attune/workflows/keyboard_shortcuts/workflow.py,sha256=EGEyZ3azXnmyu24ycTDgHDulwXPU7FaIWn2GDpixsG0,17674
333
+ attune/workflows/progressive/README 2.md,sha256=zZNzVWK56hQdzFNePArefG0n_mL3v_LEGv3jfltVrmQ,13745
334
+ attune/workflows/progressive/README.md,sha256=zZNzVWK56hQdzFNePArefG0n_mL3v_LEGv3jfltVrmQ,13745
335
+ attune/workflows/progressive/__init__.py,sha256=e1lacdjDlc58evGbrpWK83Nl7_-PW1zwsiaYbdxaPug,2155
336
+ attune/workflows/progressive/cli.py,sha256=2XAEqh9O8_8iT69cykx6OhnZ-YbnLIXrU1ySil3Wt5g,6113
337
+ attune/workflows/progressive/core.py,sha256=wPwqA0PbeoJUaKkSnzCx4ojsmtNVZOq500azpCBH1lE,16061
338
+ attune/workflows/progressive/orchestrator.py,sha256=-xF4cd7JDn08R3-K1fUDzxMp0uDpYC-tjnyO78j0p4A,27729
339
+ attune/workflows/progressive/reports.py,sha256=c0F0f4m1mwRedaPn4nMRHlJCbHBt2GMNxWGN44Lykdc,17616
340
+ attune/workflows/progressive/telemetry.py,sha256=Kkc1uDcal47Vwh83QDT9ngzrFzMKY2-MYrwYz_iLDew,9390
341
+ attune/workflows/progressive/test_gen.py,sha256=jgRseqvWZNJzz53yvq8IPKNfcl_yhpb6-4pdP5pLWYw,15751
342
+ attune/workflows/progressive/workflow.py,sha256=MM9wBYvRdgg3yH3xD45NcLQOAL9PLn_JWp3j6Mnrrc4,21134
343
+ attune/workflows/test_gen/__init__.py,sha256=x891W01J_ve3RufDSbtuasCl8xHzccGF8a72WeNnMdw,1230
344
+ attune/workflows/test_gen/ast_analyzer.py,sha256=I50uqEZ-8oX31Ap7Yl02id9Bnvxa6u5OmKPe4iL4N2k,9140
345
+ attune/workflows/test_gen/config.py,sha256=7FbbAUoGRSavlIQ5bhvg_D4z-3nYoaAn-sNZylzmv7A,2176
346
+ attune/workflows/test_gen/data_models.py,sha256=wXfef60ptiG6AvygayTxWqlL5FVOss19CX5BKxT0w8o,1099
347
+ attune/workflows/test_gen/report_formatter.py,sha256=RaxbDp6-9iQRfJmVwrrIReVkOkrnb668NgHrNaS-SPY,10705
348
+ attune/workflows/test_gen/test_templates.py,sha256=4ywqGYYaSoZxOU6Y1_E-27KEgMI5-v2a1ndia406E9c,13180
349
+ attune/workflows/test_gen/workflow.py,sha256=U0dhAcCKmlltPIvCSXUeFzt_Q4TodQI4tXtR6cz19MQ,25729
350
+ attune_ai-2.0.0.dist-info/licenses/LICENSE,sha256=kqe3EeGatNB79lUTHxjLnxDe7VJr0iYetThOr4_Fx7A,11348
351
+ attune_ai-2.0.0.dist-info/licenses/LICENSE_CHANGE_ANNOUNCEMENT.md,sha256=JH9yAQGv_lQej5YlztI_kawbVQ2H8uVLhPGlrWnR_34,3844
352
+ attune_healthcare/__init__.py,sha256=4NioL1_86UXzkd-QNkQZUSZ8rKTQGSP0TC9VXP32kQs,295
353
+ attune_healthcare/monitors/__init__.py,sha256=Udp8qfZR504QAq5_eQjvtIaE7v06Yguc7nuF40KllQc,196
354
+ attune_healthcare/monitors/clinical_protocol_monitor.py,sha256=MWE5t8tW9HWZn_SNo-inx8-0nhdTNGhbcB8ZeDWyXa0,11648
355
+ attune_healthcare/monitors/monitoring/__init__.py,sha256=UW9f-n0T_ra8HRiY5Vh8AlSVOlaZrC0KHT3ssghwAX4,1295
356
+ attune_healthcare/monitors/monitoring/protocol_checker.py,sha256=u6ASfirDB4d5hUq2lEqgvdQBjZdQzEFjR4g4UuJUeFM,9635
357
+ attune_healthcare/monitors/monitoring/protocol_loader.py,sha256=BXj5vDB3tGDlIbaKEnlIHDl2q4hPxoNNhycMCZyQ54I,6443
358
+ attune_healthcare/monitors/monitoring/sensor_parsers.py,sha256=q3GWA4wGEeZF8FhShv7b0-LNNCPiKy6YR3xXecQet7A,9485
359
+ attune_healthcare/monitors/monitoring/trajectory_analyzer.py,sha256=71UWRt4GLRm0wWQe8NsXqb7iBb6oLQLos7U6K8C8LNs,13494
360
+ attune_llm/README.md,sha256=wKfp80nOvQkyU2qkBMAdF9cPPR3iaHuia_2AfiXVaFM,12273
361
+ attune_llm/__init__.py,sha256=c07s4-Otc5miOpWB1g4v77EbvJr9IWsQsMpNnMx9PHc,704
362
+ attune_llm/claude_memory.py,sha256=IIwm3su_vyyyoLy4NrpwVk96KLnIgq1A_TfBhjcUZk4,14878
363
+ attune_llm/code_health.py,sha256=Xi9Qpj2ABGV0MADE0v7OHcc42Hp2_dWsYtIsKQ1OEm0,49831
364
+ attune_llm/contextual_patterns.py,sha256=VRvIAnwuKjCd25LbjdiCS_tS55OR-cJsQfmG_FnsIDY,12324
365
+ attune_llm/core.py,sha256=bpM7YqbTzZn8P9dOLeim5CyXFtOnHx_XjqhiFNeDzJk,35054
366
+ attune_llm/git_pattern_extractor.py,sha256=vzXJl9pUkc8pfpkOqAtr4fIE0w6rrjHrK8UMJDJ2_ZA,15288
367
+ attune_llm/levels.py,sha256=Hu9G83iY-BRyjMJKNoDNYZ9xFD0Y0LIn_XEBc5aRWx0,7135
368
+ attune_llm/pattern_confidence.py,sha256=69QQkUvpeWal5VhEHeTMISf4vdPa88f9pL6E40vO4JA,14144
369
+ attune_llm/pattern_resolver.py,sha256=OjTLW87NWVW-G0qmJm32BcSQ99I3AmvWbTgBz79Ie08,9256
370
+ attune_llm/pattern_summary.py,sha256=qgfHuQWB3uyxCh67YOgYId2FkgZ-QmHlUaMO0NVsXBs,12268
371
+ attune_llm/providers.py,sha256=IuhNWcspHk0Rb4KUM7lpw87_SbW65z6f8gFAzP024S0,34848
372
+ attune_llm/session_status.py,sha256=x4Du1apyAl8QmVPnrwA_QYOK4_wM9tuBzGFZel-P_Us,25668
373
+ attune_llm/state.py,sha256=diLXx8QKzfucVDhbKNWej40JXQFmIeM1Qvvzg92pmjU,8030
374
+ attune_llm/agent_factory/__init__.py,sha256=7xLlF2an5qkyNOru9aMK2trq1eKRqMPj7NThWYmjX5Q,1723
375
+ attune_llm/agent_factory/base.py,sha256=QVUvK86pHjk5XWXAFj_gVkw9q_pyEdlLzM86zhW9FDo,8942
376
+ attune_llm/agent_factory/decorators.py,sha256=pl_FxhidmD9XK2Drgu0sPlTAWg-OZxyMtaz9OB29sfA,8757
377
+ attune_llm/agent_factory/factory.py,sha256=h8h9LEzvMuBN6XG5LEKaui5U8DrRuSntuqozZ9fWKKM,18258
378
+ attune_llm/agent_factory/framework.py,sha256=cgDJpwlk3WiBCj8PEdCdz1MBTRFsmN9lpdht5D_HApo,6073
379
+ attune_llm/agent_factory/memory_integration.py,sha256=cIGRah5luj-Pf1LAJr-83g3SXIKd4n_gJNnlJZ84LaU,11575
380
+ attune_llm/agent_factory/resilient.py,sha256=edhQLPLelm3sdK0j4bsr3XeJsO-CCH07WCHN2wuERoI,10903
381
+ attune_llm/agent_factory/adapters/__init__.py,sha256=u7_Yirj1oqL0Q5jMnGmapB1V6tKh2vmmXBOYfF1C3bY,2322
382
+ attune_llm/agent_factory/adapters/autogen_adapter.py,sha256=UlWClHqqLRuCOPC2di0ACmt_xccMCT2BAJR0QBT6vio,10942
383
+ attune_llm/agent_factory/adapters/crewai_adapter.py,sha256=ShvYbL7zbBfel3Wq8iH50AEh4nDbH5uD_yjJfRALjbY,17227
384
+ attune_llm/agent_factory/adapters/haystack_adapter.py,sha256=4sq-ETrDsHvfAvX7mbvfgt3nyZRN_0FgdtS6y9jYYzA,10219
385
+ attune_llm/agent_factory/adapters/langchain_adapter.py,sha256=H-uTdtHV7aQ0akpoRPlsXzsDzxklH9HGWG7yBjyH2h0,13218
386
+ attune_llm/agent_factory/adapters/langgraph_adapter.py,sha256=-5ZLG3T9b7exc0RGhfp3pH3C8IuvT5eIZ5rh-WZsZdE,11544
387
+ attune_llm/agent_factory/adapters/native.py,sha256=c_devS7DtHAsmtBY5FWCbOBdBIHBUdRVwkU0aPxU2i0,7709
388
+ attune_llm/agent_factory/adapters/wizard_adapter.py,sha256=6Hc9pQu13L0pb0e0HHQ0sMEhPB6xSNxb86MeeS_tLUk,13088
389
+ attune_llm/agent_factory/crews/__init__.py,sha256=m4XhZo0TSr7o-SrO1MhUAaDRa111gg48U1bxHhAPZnA,1546
390
+ attune_llm/agent_factory/crews/code_review.py,sha256=H4onAAF0kDJh4bcYQ4if43B2rqFngIqf4U3yAxKVsk8,39292
391
+ attune_llm/agent_factory/crews/health_check.py,sha256=bv_aY_mupys1UBVr5puWGPm3LtG602hYcE9t-89fhmQ,44463
392
+ attune_llm/agent_factory/crews/refactoring.py,sha256=Lv1ydr3Eb46H2NuNHjrQh8EajwoDS5n0fl8-4r4ov6c,40341
393
+ attune_llm/agent_factory/crews/security_audit.py,sha256=GXbJGJjiG5RsZqwPaJVKiUoyUHFoHQou3qz7zoiU7lg,36496
394
+ attune_llm/agents_md/__init__.py,sha256=6rAirIi8WTda10eFBd_1tYJIb59xPwsW1RsymuNfobY,694
395
+ attune_llm/agents_md/loader.py,sha256=gNOijOReuVZQoMqbQpbQylB1z_e3I2MGM5S5yZXT2M0,5975
396
+ attune_llm/agents_md/parser.py,sha256=Krhiy4AKvKj2CJgr0Q0S76J2xGxPpc5onMHwhJArzNQ,8556
397
+ attune_llm/agents_md/registry.py,sha256=0KCRH3aFoGtM90QkJwMkf45e92H32rZGV3OGY_AAlHs,8140
398
+ attune_llm/cli/__init__.py,sha256=-U-ESXUHamUV1vL-4aBfPFdyBysd4PzeiS1W65bDv2U,177
399
+ attune_llm/cli/sync_claude.py,sha256=4URwY9Sbj3Rixf3RFzI42IuNatkcn8rjnugBWTkbVRM,15647
400
+ attune_llm/commands/__init__.py,sha256=LaVRxqkzMVgl2mJPrKeVoJamf99pGVkc67VBfy7OdL4,1753
401
+ attune_llm/commands/context.py,sha256=vxHf7ya_r7RREVfco1vZvlchAju64isXoZZakG7eyxs,10787
402
+ attune_llm/commands/loader.py,sha256=icxyvQaoMEoBDzAz-8x_qb6X0z3cuWxYLWsicLXITik,8224
403
+ attune_llm/commands/models.py,sha256=Ne-R9uLqgrhVMc3flud8zxpa47cvhzMIYhrPWFsNgFM,6883
404
+ attune_llm/commands/parser.py,sha256=ZQ9OkKLYJl3U8syPPR_E28ymkeU4BXfNHzz9s4_U2ww,11002
405
+ attune_llm/commands/registry.py,sha256=mXKGxpnbbxGClUsm4i1VrvLPJB_P8_1p4UWbpdu5OMo,12059
406
+ attune_llm/config/__init__.py,sha256=8Hr8RFt6DQpJNjh2UxR7SWL6IDPkTPp_v5r_pHznkTs,934
407
+ attune_llm/config/unified.py,sha256=06x9xRtRj6f1ZoKVy40ylpMEhqE_WozXUazqO7KZ1fQ,9337
408
+ attune_llm/context/__init__.py,sha256=koziaCcTalYd7Bd5Z0Bp3afSVSLGiIZ78ufDaemDlps,734
409
+ attune_llm/context/compaction.py,sha256=aYawLOgF_BQUzyjfQXATujNN6pytGgVUfue7sumloNA,14228
410
+ attune_llm/context/manager.py,sha256=3mXf3R0QA5ErPl5KuoGfK9F3-IfwphU0vA-DVMccjCM,13648
411
+ attune_llm/hooks/__init__.py,sha256=f5w4A1azJyNiITNBcNNxeuI3nG5HcRn3YCWghHeVO4w,739
412
+ attune_llm/hooks/config.py,sha256=gec6edytJck0ziJnYudD0aYF4NUg3lqYIoGk0VDVBgo,8446
413
+ attune_llm/hooks/executor.py,sha256=3TVv9Jc_wQ6xUedSsnasxSjRkDatMqRPTh-Rdq1-nsQ,8382
414
+ attune_llm/hooks/registry.py,sha256=WtuWjzpOVP9f5YqISCoYvFG-_5DKNiiwL-3Nfkc2V0Q,8754
415
+ attune_llm/hooks/scripts/__init__.py,sha256=HhvL-S34WFSColILhVY40yijBfZ2LIYOXzBE_8Hvny0,1151
416
+ attune_llm/hooks/scripts/evaluate_session.py,sha256=dzczNndVNq4j5mTEBSINxF-HWpFnbs_VFGz62wRLL7Y,6689
417
+ attune_llm/hooks/scripts/first_time_init.py,sha256=7vn59pyRVKLexciMcWwyvQU7mqPQFPxTJtSsY1YRkFw,7811
418
+ attune_llm/hooks/scripts/pre_compact.py,sha256=tePywdnEfYYh_felrmj9tKDxi6NKstuOV7WO5pJCK7E,7702
419
+ attune_llm/hooks/scripts/session_end.py,sha256=WAHwsVe6-BBZsoOa6ogDqGLyJPwtEaQF8lMaHfseP4M,5188
420
+ attune_llm/hooks/scripts/session_start.py,sha256=4GX_XQQvYi7BzKQ56ClPb2p18v-SVT8lvLguK8Zry7c,4598
421
+ attune_llm/hooks/scripts/suggest_compact.py,sha256=BpTHK8NFOQmeookJ5FSxDMw-1sX7XgWy9eewCX8b64o,6107
422
+ attune_llm/learning/__init__.py,sha256=_1CErk-ydmNdz-pJUni_BlDk1OKBJCwobtnrLWznMmg,1060
423
+ attune_llm/learning/evaluator.py,sha256=e2yy5wQwn9JYsmqFman8dP0zcAlx8TOkPi8UnbIIYXU,13368
424
+ attune_llm/learning/extractor.py,sha256=eH2M9JcJkRFJX-VR12oORDIgkOLDpxi2VnVhZIwdeNk,17373
425
+ attune_llm/learning/storage.py,sha256=YQHT5hZWFur7qy09K596Yej21liW040Vn5BHpfQFsAY,16059
426
+ attune_llm/routing/__init__.py,sha256=0h_IVIOQHd1WeXSzJWASO0WoznpLOQu6H0v_NQmOrGU,1005
427
+ attune_llm/routing/model_router.py,sha256=X0R20NNntm2XgrWQNeIFxWkNnnnCvKU5Stxm84JF1as,11013
428
+ attune_llm/security/IMPLEMENTATION_SUMMARY.md,sha256=2EERHdcKvxP-UiUaSbREBcIbrpKDWvpNhXQ6eEGEFzE,11240
429
+ attune_llm/security/PHASE2_COMPLETE.md,sha256=l5aUxyuCL9BMGJVIO0W-pPUQJI7EwvZwt52yxXlt6mU,11666
430
+ attune_llm/security/PHASE2_SECRETS_DETECTOR_COMPLETE.md,sha256=EFLHTOtrLMBZ_j86g2yBn0P6gJGdkPQ8J8vAVKISNkg,9821
431
+ attune_llm/security/QUICK_REFERENCE.md,sha256=YKgMmZbCQE-MZZuwvarPfYeWvCEflfBElSKPgzhVWas,7656
432
+ attune_llm/security/README.md,sha256=R-s09Bug5fV-O7CGWb535d0hMCB56w753ZV9f10Wl60,7409
433
+ attune_llm/security/__init__.py,sha256=4vwesGT2WQAZ3E-0zYNliJ5d3OwwpNMPUY0jnULr2Yg,2128
434
+ attune_llm/security/audit_logger.py,sha256=pSZEDukI1vFnefe7F48xQ63HpvM1slWrrl1BPhoi_kY,33956
435
+ attune_llm/security/audit_logger_example.py,sha256=jEtwM1i_dZ73ypKkdVumAB2yDOziQN41xrOrtu8OXF4,5009
436
+ attune_llm/security/pii_scrubber.py,sha256=ucPdE_ZEObR3T8hPK--tabdzLDumZQV4YUfislELvCc,21563
437
+ attune_llm/security/secrets_detector.py,sha256=bJsXTD95yEnfShDMxvCndzF8X7HNvkJamLXmkvWwpbk,22775
438
+ attune_llm/security/secrets_detector_example.py,sha256=MwJ0kBv1Iss6PlAL-3QCXgvdyHO6FR6NW6ewKqNwSGQ,9449
439
+ attune_llm/security/secure_memdocs.py,sha256=Da4NNo7HCLypjUbOTNJS8QaMGnlVK5T7IHK9m2YwjJE,40221
440
+ attune_llm/security/secure_memdocs_example.py,sha256=5BChobQF8zeIzLPfb3SOmNYB2cf8qZQlz2hd46g_Vuw,8350
441
+ attune_llm/utils/__init__.py,sha256=RExnyfXSspnFYHqkvz5z5Xjl_MyWztn802KQQ7rpYVs,178
442
+ attune_llm/utils/tokens.py,sha256=yZpNI2wycY9XcFQbh3oC4kbF76TjW9-mD8lmhRvOJ8c,11212
443
+ attune_software/SOFTWARE_PLUGIN_README.md,sha256=U1KUIrhtZAB9ZI0K4-x5-R3TK3yqlM_5DbPyvcL2azk,1387
444
+ attune_software/__init__.py,sha256=OceDhLoQrjD0jTPlI4418608l97OT48u4SCL5yEDPQc,309
445
+ attune_software/cli.py,sha256=Gs4BKNsa0KBt698YSBvKNWvLkHJk29nAiYIZowIRfHI,18541
446
+ attune_software/plugin.py,sha256=E5seRRFaV76ybSrjmfZ9Csxt5nXWIhQ72LvwpJWYsgk,6672
447
+ attune_software/cli/__init__.py,sha256=ct2F6BW7pipCv02FYIvuv_DlPCu4egS1c4gpi_X5hok,4229
448
+ attune_software/cli/inspect.py,sha256=Z1f2bV0TtAUY0uODMjEmoM2zryAsM2mwQEAyRMlmhOE,9413
449
+ workflow_scaffolding/__init__.py,sha256=UpX5vjjjPjIaAKyIV1D4GxJzLUZy5DzdzgSkePYMES0,222
450
+ workflow_scaffolding/__main__.py,sha256=0qspuNoadTDqyskXTlT8Sahqau-XIxN35NHTSGVW6z4,236
451
+ workflow_scaffolding/cli.py,sha256=RUVqU9SeAgm7YkM0YNd-quh8u6BNzmX8xM2y9K_p68Y,6759
452
+ workflow_scaffolding/generator.py,sha256=2WC02A10lzF2NQgOn66ksV17Oe72kKlU2qCQs39LIlw,8861
453
+ attune_ai-2.0.0.dist-info/METADATA,sha256=3bG-Au_3MyqOcdz2tpvWXxNYTbz7Ho7UIgIKivKqDwI,45033
454
+ attune_ai-2.0.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
455
+ attune_ai-2.0.0.dist-info/entry_points.txt,sha256=GVlb04zFlpkaPtaL7X3JCZI8R0AEOZRsZjJ-wIDQvdo,1458
456
+ attune_ai-2.0.0.dist-info/top_level.txt,sha256=iLyjKpuOzWtwmIOZqzeBh8_SVztY2vFvhHcyo1WPtTY,73
457
+ attune_ai-2.0.0.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (80.10.2)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1,26 @@
1
+ [console_scripts]
2
+ attune = attune.cli_minimal:main
3
+ attune-scan = attune_software.cli:scan_command
4
+ empathy-inspect = attune_software.cli.inspect:main
5
+ empathy-legacy = attune.cli:main
6
+ empathy-memory = attune.memory.control_panel:main
7
+ empathy-sync-claude = attune_llm.cli.sync_claude:main
8
+ empathy-unified = attune.cli_unified:main
9
+
10
+ [empathy.workflows]
11
+ bug-predict = attune.workflows.bug_predict:BugPredictionWorkflow
12
+ code-review = attune.workflows.code_review:CodeReviewWorkflow
13
+ dependency-check = attune.workflows.dependency_check:DependencyCheckWorkflow
14
+ doc-gen = attune.workflows.document_gen:DocumentGenerationWorkflow
15
+ health-check = attune.workflows.health_check_crew:HealthCheckCrew
16
+ health-check-legacy = attune.workflows.health_check:HealthCheckWorkflow
17
+ perf-audit = attune.workflows.perf_audit:PerformanceAuditWorkflow
18
+ pr-review = attune.workflows.pr_review:PRReviewWorkflow
19
+ pro-review = attune.workflows.code_review_pipeline:CodeReviewPipeline
20
+ refactor-plan = attune.workflows.refactor_plan:RefactorPlanWorkflow
21
+ release-prep = attune.workflows.release_prep_crew:ReleasePreparationCrew
22
+ release-prep-legacy = attune.workflows.release_prep:ReleasePreparationWorkflow
23
+ secure-release = attune.workflows.secure_release:SecureReleasePipeline
24
+ security-audit = attune.workflows.security_audit:SecurityAuditWorkflow
25
+ test-coverage-boost = attune.workflows.test_coverage_boost_crew:TestCoverageBoostCrew
26
+ test-gen = attune.workflows.test_gen:TestGenerationWorkflow