turnloop 0.1.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.
- turnloop/__init__.py +3 -0
- turnloop/__main__.py +4 -0
- turnloop/agent/__init__.py +0 -0
- turnloop/agent/factory.py +175 -0
- turnloop/agent/headless.py +150 -0
- turnloop/agent/loop.py +396 -0
- turnloop/agent/subagent.py +182 -0
- turnloop/agent/system_prompt.py +263 -0
- turnloop/cli.py +202 -0
- turnloop/commands/__init__.py +0 -0
- turnloop/commands/dispatch.py +428 -0
- turnloop/commands/loader.py +140 -0
- turnloop/config.py +425 -0
- turnloop/context/__init__.py +0 -0
- turnloop/context/budget.py +74 -0
- turnloop/context/compaction.py +441 -0
- turnloop/context/memory.py +120 -0
- turnloop/core/__init__.py +0 -0
- turnloop/core/events.py +145 -0
- turnloop/core/ids.py +29 -0
- turnloop/core/messages.py +217 -0
- turnloop/core/tokens.py +104 -0
- turnloop/diagnostics.py +233 -0
- turnloop/errors.py +64 -0
- turnloop/experiments/__init__.py +0 -0
- turnloop/experiments/configs/bakeoff.yaml +50 -0
- turnloop/experiments/configs/ceiling-check.yaml +31 -0
- turnloop/experiments/configs/context-glm.yaml +59 -0
- turnloop/experiments/configs/context.yaml +65 -0
- turnloop/experiments/configs/glm-selfhosted.yaml +36 -0
- turnloop/experiments/configs/groq-free.yaml +28 -0
- turnloop/experiments/configs/hard-calibration.yaml +26 -0
- turnloop/experiments/configs/hard-glm.yaml +41 -0
- turnloop/experiments/configs/loop.yaml +34 -0
- turnloop/experiments/configs/nvidia-smoke.yaml +22 -0
- turnloop/experiments/configs/reliability.yaml +44 -0
- turnloop/experiments/configs/rewrite-calibration.yaml +24 -0
- turnloop/experiments/configs/smoke.yaml +22 -0
- turnloop/experiments/graders.py +209 -0
- turnloop/experiments/report.py +371 -0
- turnloop/experiments/runner.py +495 -0
- turnloop/experiments/suite/default.yaml +185 -0
- turnloop/experiments/suite/fixtures/bulky/module_1.py +670 -0
- turnloop/experiments/suite/fixtures/bulky/module_2.py +670 -0
- turnloop/experiments/suite/fixtures/bulky/module_3.py +670 -0
- turnloop/experiments/suite/fixtures/bulky/module_4.py +670 -0
- turnloop/experiments/suite/fixtures/bulky/module_5.py +670 -0
- turnloop/experiments/suite/fixtures/bulky/module_6.py +672 -0
- turnloop/experiments/suite/fixtures/bulky/module_7.py +670 -0
- turnloop/experiments/suite/fixtures/bulky/module_8.py +670 -0
- turnloop/experiments/suite/fixtures/circular_import/models.py +11 -0
- turnloop/experiments/suite/fixtures/circular_import/services.py +15 -0
- turnloop/experiments/suite/fixtures/circular_import/test_cancel.py +12 -0
- turnloop/experiments/suite/fixtures/cli_flag/app.py +16 -0
- turnloop/experiments/suite/fixtures/cross_file_contract/decode.py +7 -0
- turnloop/experiments/suite/fixtures/cross_file_contract/encode.py +10 -0
- turnloop/experiments/suite/fixtures/cross_file_contract/test_roundtrip.py +11 -0
- turnloop/experiments/suite/fixtures/cross_file_contract/test_wire_format.py +7 -0
- turnloop/experiments/suite/fixtures/empty/.keep +1 -0
- turnloop/experiments/suite/fixtures/failing_test/calc.py +14 -0
- turnloop/experiments/suite/fixtures/failing_test/test_calc.py +17 -0
- turnloop/experiments/suite/fixtures/generate_bulky.py +80 -0
- turnloop/experiments/suite/fixtures/grep_edit/ingest.py +5 -0
- turnloop/experiments/suite/fixtures/grep_edit/load.py +5 -0
- turnloop/experiments/suite/fixtures/grep_edit/transform.py +5 -0
- turnloop/experiments/suite/fixtures/misleading_traceback/checkout.py +21 -0
- turnloop/experiments/suite/fixtures/misleading_traceback/invoice.py +8 -0
- turnloop/experiments/suite/fixtures/misleading_traceback/pricing.py +11 -0
- turnloop/experiments/suite/fixtures/misleading_traceback/test_checkout.py +12 -0
- turnloop/experiments/suite/fixtures/misleading_traceback/test_invoice.py +6 -0
- turnloop/experiments/suite/fixtures/needle/inventory.py +18 -0
- turnloop/experiments/suite/fixtures/needle/pricing.py +17 -0
- turnloop/experiments/suite/fixtures/needle/shipping.py +13 -0
- turnloop/experiments/suite/fixtures/regression_trap/test_validators.py +14 -0
- turnloop/experiments/suite/fixtures/regression_trap/validators.py +23 -0
- turnloop/experiments/suite/fixtures/rename/billing.py +7 -0
- turnloop/experiments/suite/fixtures/rename/report.py +5 -0
- turnloop/experiments/suite/fixtures/rename/test_billing.py +11 -0
- turnloop/experiments/suite/fixtures/spec/parser.py +19 -0
- turnloop/experiments/suite/fixtures/spec/test_parser.py +28 -0
- turnloop/experiments/suite/fixtures/subtle_spec_edge/leaderboard.py +12 -0
- turnloop/experiments/suite/fixtures/subtle_spec_edge/test_leaderboard.py +28 -0
- turnloop/experiments/suite/fixtures/util/util.py +9 -0
- turnloop/hooks/__init__.py +0 -0
- turnloop/hooks/runner.py +221 -0
- turnloop/mcp/__init__.py +0 -0
- turnloop/mcp/adapter.py +109 -0
- turnloop/mcp/client.py +299 -0
- turnloop/permissions/__init__.py +0 -0
- turnloop/permissions/engine.py +211 -0
- turnloop/permissions/rules.py +325 -0
- turnloop/providers/__init__.py +0 -0
- turnloop/providers/anthropic.py +318 -0
- turnloop/providers/base.py +329 -0
- turnloop/providers/gemini.py +217 -0
- turnloop/providers/mock.py +226 -0
- turnloop/providers/openai_compat.py +357 -0
- turnloop/providers/pricing.py +148 -0
- turnloop/providers/registry.py +75 -0
- turnloop/providers/sse.py +114 -0
- turnloop/sessions/__init__.py +0 -0
- turnloop/sessions/models.py +139 -0
- turnloop/sessions/store.py +271 -0
- turnloop/tools/__init__.py +0 -0
- turnloop/tools/ask.py +133 -0
- turnloop/tools/base.py +286 -0
- turnloop/tools/bash.py +423 -0
- turnloop/tools/builtin.py +63 -0
- turnloop/tools/edit.py +238 -0
- turnloop/tools/glob.py +235 -0
- turnloop/tools/grep.py +314 -0
- turnloop/tools/read.py +151 -0
- turnloop/tools/runner.py +284 -0
- turnloop/tools/shell.py +222 -0
- turnloop/tools/skill.py +89 -0
- turnloop/tools/task.py +161 -0
- turnloop/tools/textio.py +87 -0
- turnloop/tools/todo.py +140 -0
- turnloop/tools/webfetch.py +235 -0
- turnloop/tools/write.py +97 -0
- turnloop/tui/__init__.py +0 -0
- turnloop/tui/app.py +330 -0
- turnloop/tui/app.tcss +84 -0
- turnloop/tui/bridge.py +142 -0
- turnloop/tui/widgets/__init__.py +0 -0
- turnloop/tui/widgets/permission.py +131 -0
- turnloop/tui/widgets/status.py +110 -0
- turnloop/tui/widgets/transcript.py +146 -0
- turnloop-0.1.0.dist-info/METADATA +916 -0
- turnloop-0.1.0.dist-info/RECORD +132 -0
- turnloop-0.1.0.dist-info/WHEEL +4 -0
- turnloop-0.1.0.dist-info/entry_points.txt +3 -0
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
turnloop/__init__.py,sha256=Y644jA4Y1p-ZeEOMxwRQeyJhxQIdtJTldpP_kNqcBhY,80
|
|
2
|
+
turnloop/__main__.py,sha256=u148odO822DW-BLEjPMxZtJZgtPsoQhWsMDeowusm9M,87
|
|
3
|
+
turnloop/cli.py,sha256=lb-UwMnL2e94mqaU9lGK8Mrqg--uDnb2eQLKVUiO_l4,7476
|
|
4
|
+
turnloop/config.py,sha256=SUMq6qMXbV21Qbmmbe44wI6TLgPUQ0Gt8Xb5vSMoQ50,14798
|
|
5
|
+
turnloop/diagnostics.py,sha256=xkusv15a8L9qtWUEIZ3L217RdJVS1ISxANmC3105L6I,8208
|
|
6
|
+
turnloop/errors.py,sha256=zvrT0lEGrJ7LWhE8xufxKDPO0vht6MmP3mFxVrfXFiI,2051
|
|
7
|
+
turnloop/agent/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
8
|
+
turnloop/agent/factory.py,sha256=17zougdD5j0bF2YTJF6ZSIYtYbZoOxaM6QGs1TnrXck,5575
|
|
9
|
+
turnloop/agent/headless.py,sha256=SB2SoEqUFWbPEek7wmiJ2gJuQ0Z2OXg4DYLjy62CkLo,5518
|
|
10
|
+
turnloop/agent/loop.py,sha256=QOeFjntrNH-QK5NFgDcATseOh6Nsql-LR3vH2FqJwe4,16446
|
|
11
|
+
turnloop/agent/subagent.py,sha256=SUVksHOPaaO2-3ZW-BcfA7ZRHCP-W8ToPFmJhEfTq24,5990
|
|
12
|
+
turnloop/agent/system_prompt.py,sha256=QOvnCdGbN1HuooFpdC6WZoIwPZ3CKEFUIzXIm2qW3zI,10907
|
|
13
|
+
turnloop/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
14
|
+
turnloop/commands/dispatch.py,sha256=cIPN6ikHG9cglt7kHMz08w_sNlB0Uc_0PxWZCI_mGqw,15984
|
|
15
|
+
turnloop/commands/loader.py,sha256=n6v01DRMBCCyhyIO0pxdQUlL_DGnqKjcw3-2K0bUJP8,4515
|
|
16
|
+
turnloop/context/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
17
|
+
turnloop/context/budget.py,sha256=VTTkX_nnEDuAaAFThB0Q2NdilKxDNSPpk3rk71L5iIY,2386
|
|
18
|
+
turnloop/context/compaction.py,sha256=pTV5pNqVKes4p-UyOJXVtEyrc1bXYnT9hBjfMgu9tfg,17993
|
|
19
|
+
turnloop/context/memory.py,sha256=6bKuIhv9OcesKkUm6iAvTOq19p-x7YPgwWnZ7N0E2XI,3658
|
|
20
|
+
turnloop/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
21
|
+
turnloop/core/events.py,sha256=Oo0q_j8ju9p8v3xDg9mMbg5PdoXa4NaFeUpskutDVGg,3276
|
|
22
|
+
turnloop/core/ids.py,sha256=RV9O4XNn0m86E2hszWJuAobGbU3ZZzk1-7wCqq8e0SI,700
|
|
23
|
+
turnloop/core/messages.py,sha256=ogzFKvjJtrtXB5eQHzIlLp7dukFbl9ftL6ZMZsAz8Uc,6933
|
|
24
|
+
turnloop/core/tokens.py,sha256=XHuTosybE-ccAMqhkM0SPZTb5Ot9xON5mJZ141XMNjQ,3481
|
|
25
|
+
turnloop/experiments/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
26
|
+
turnloop/experiments/graders.py,sha256=99MM4y7NLpCq2YTo7LIKkqrKklg0es1KkC0_JhZ-reU,8059
|
|
27
|
+
turnloop/experiments/report.py,sha256=HXYkw7qdZNI8YQwseh39PeD-rkcwzJDJOzFbkBFs-g0,14852
|
|
28
|
+
turnloop/experiments/runner.py,sha256=eGzI95i7eNw5YAb110qxiqVc3TPYraQ-IIpJOoOuNJ0,18589
|
|
29
|
+
turnloop/experiments/configs/bakeoff.yaml,sha256=xwBI3PRLhXtpnMbs4Gd9A_GCH1Q_cv-z3EA7pNjKirE,1350
|
|
30
|
+
turnloop/experiments/configs/ceiling-check.yaml,sha256=Y1GmFcKY3VvVrsLq_3OTv7qI-TFhkOG6EqR4byyWP3Q,1180
|
|
31
|
+
turnloop/experiments/configs/context-glm.yaml,sha256=ByUDaihAcJ2CCb684AbkXIhb7PtfbvD995eFyrjhvrA,1699
|
|
32
|
+
turnloop/experiments/configs/context.yaml,sha256=qI6W2bLLDDFZE6sOJPaFW1iznR7gWPyuVKoHcX2Hfu8,1937
|
|
33
|
+
turnloop/experiments/configs/glm-selfhosted.yaml,sha256=gnmnDCJ0WsCKkjElkfFxoq62FeWwN8ndLN84vlrjM5Q,1356
|
|
34
|
+
turnloop/experiments/configs/groq-free.yaml,sha256=Vutr3MCNRuT0D2OYueg2PGKKNhyTXFoeEOTlUmLVAcU,818
|
|
35
|
+
turnloop/experiments/configs/hard-calibration.yaml,sha256=28fwP3V8tI8gx2UZa-j7A8FCA9CW_fH2SD1MfHeSUsA,853
|
|
36
|
+
turnloop/experiments/configs/hard-glm.yaml,sha256=uK6R6ak1NZuT_E-g8FxHDljrxDujC5YRZZFJJJO0-aE,1785
|
|
37
|
+
turnloop/experiments/configs/loop.yaml,sha256=1okrCTcbiRbQQR5e363dmS8yyVt80DygsqLGdLULeT0,941
|
|
38
|
+
turnloop/experiments/configs/nvidia-smoke.yaml,sha256=MCRkx42mQKJtR2jhCvNUK2QyD8h9D6ZMScgBlhl8kJw,536
|
|
39
|
+
turnloop/experiments/configs/reliability.yaml,sha256=qfArqZt1GZaSUeBg4tgN6HXxeueF51D9iY3yz-LR8pE,1509
|
|
40
|
+
turnloop/experiments/configs/rewrite-calibration.yaml,sha256=Jcmd6pg4wmlZK5aQOwxiqg9oqu6VZ8WtbZZqFDLTiiI,805
|
|
41
|
+
turnloop/experiments/configs/smoke.yaml,sha256=sm8OXr1f_i7rgL1IUuHDPLaBK6mNfgALzf1PXUmdNoc,513
|
|
42
|
+
turnloop/experiments/suite/default.yaml,sha256=CvXpwuSxunIiPhwQY5h_WVveSdNvdLyyOxtwFbdXmQg,6850
|
|
43
|
+
turnloop/experiments/suite/fixtures/generate_bulky.py,sha256=wP2iTzQnXO_h2XgXCQ-riTww-mHg15aSaEFQMPUcSGg,3236
|
|
44
|
+
turnloop/experiments/suite/fixtures/bulky/module_1.py,sha256=zNhNygUtsl6aS3qoL9KhwxmFd68Mnc0lPIN1-OReOPQ,60152
|
|
45
|
+
turnloop/experiments/suite/fixtures/bulky/module_2.py,sha256=ankjJm3PaZNks8VsyB-aj6mDz78pfk-vs_EQFhpSoHQ,60152
|
|
46
|
+
turnloop/experiments/suite/fixtures/bulky/module_3.py,sha256=0eCfFYC51R6DdaWB_WXQxsZ_dkHjztbsvpGuhQv9OVM,60152
|
|
47
|
+
turnloop/experiments/suite/fixtures/bulky/module_4.py,sha256=DgdaWFYi99hESzRQX7cC5MfpV4-BoRATQJrBp5rLFPo,60152
|
|
48
|
+
turnloop/experiments/suite/fixtures/bulky/module_5.py,sha256=psCdGBh53aYj_UVOWEl7AbL8z5CRzpBCo35ghoO6vPI,60152
|
|
49
|
+
turnloop/experiments/suite/fixtures/bulky/module_6.py,sha256=IlfSOsouShoq7nr33pMS081TqnvTvqMJjgWUGgfimVI,60179
|
|
50
|
+
turnloop/experiments/suite/fixtures/bulky/module_7.py,sha256=ENKfus5mqXmNNOZk8nUOM_NSJwYUIAcxkrnXEEiopoA,60152
|
|
51
|
+
turnloop/experiments/suite/fixtures/bulky/module_8.py,sha256=HzwHijPG3xHmInuFlQ94mB2OjN4-pfIXSrWepzgUac8,60152
|
|
52
|
+
turnloop/experiments/suite/fixtures/circular_import/models.py,sha256=Bk8qllnlVI2e2JRRKR9dst-h5ND3KPcqjmbkOvybKcg,258
|
|
53
|
+
turnloop/experiments/suite/fixtures/circular_import/services.py,sha256=O_BAnEce8z1yLdOueMzQj_c0hOMfgdilgIeuAoR2Eaw,292
|
|
54
|
+
turnloop/experiments/suite/fixtures/circular_import/test_cancel.py,sha256=PR0TH89k9mh-k2jyi4Sl3eL4JKivwIzBR5_FxlCPxMg,301
|
|
55
|
+
turnloop/experiments/suite/fixtures/cli_flag/app.py,sha256=iDN0sVYVkH4V4V8uaA9WVO96hz7RSFOUIfGXg5zf-20,282
|
|
56
|
+
turnloop/experiments/suite/fixtures/cross_file_contract/decode.py,sha256=iyRMA_yMpyr6JThgE1YH4EDSTB2m4nnSR4KGU2ndfFo,176
|
|
57
|
+
turnloop/experiments/suite/fixtures/cross_file_contract/encode.py,sha256=J5PZvIsarQEEJgkKghaBandPlVIqdupFjwO44tkiMjI,330
|
|
58
|
+
turnloop/experiments/suite/fixtures/cross_file_contract/test_roundtrip.py,sha256=RHkbbCmnq4tNhfGtMvIA-UcyFBwsprI_c3KHb-xj2qc,298
|
|
59
|
+
turnloop/experiments/suite/fixtures/cross_file_contract/test_wire_format.py,sha256=YLutA6Ft7t4MRUJCvi91F1WQfgXDEf_Vi18J8Q8l-Iw,280
|
|
60
|
+
turnloop/experiments/suite/fixtures/empty/.keep,sha256=frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN_XKdLCPjaYaY,2
|
|
61
|
+
turnloop/experiments/suite/fixtures/failing_test/calc.py,sha256=2tlz8ZKsn8J6k1--wIQ7Y5IV1CcsDamvNdQdIXfCEf0,267
|
|
62
|
+
turnloop/experiments/suite/fixtures/failing_test/test_calc.py,sha256=D48mgknwgwy0HB3c8gtpuXUkqrM9zdTxAUEo6Wjgq3E,289
|
|
63
|
+
turnloop/experiments/suite/fixtures/grep_edit/ingest.py,sha256=uOSyLEAIMGMrO9ukbS6_vY8pGxSfQ9AvMzccqYlZj_E,157
|
|
64
|
+
turnloop/experiments/suite/fixtures/grep_edit/load.py,sha256=BglieaPIA1dfnmv1aIFZ9Ndnh1zj_Dj4vuodfsJsPNI,149
|
|
65
|
+
turnloop/experiments/suite/fixtures/grep_edit/transform.py,sha256=Nox3vhO1hsBrHCvP2OxZ7vcUTdnQ3QAmvmWZrG6R_hw,169
|
|
66
|
+
turnloop/experiments/suite/fixtures/misleading_traceback/checkout.py,sha256=f9BFOroSW5YxcWlPUp5c5pBd0pmr3gys0PEXu9W8bDA,685
|
|
67
|
+
turnloop/experiments/suite/fixtures/misleading_traceback/invoice.py,sha256=gQTLOJjovpyfO_LYbibB7Q6N0laz_hYo8U0B04CzF5s,303
|
|
68
|
+
turnloop/experiments/suite/fixtures/misleading_traceback/pricing.py,sha256=wIMWlssSDpgB_TOd8RzwwC8BX2JOle1NkEPVb3LsJbw,434
|
|
69
|
+
turnloop/experiments/suite/fixtures/misleading_traceback/test_checkout.py,sha256=kRfBR8A9T8Kyc1dyqXo0hkcIS8dv9sMyVNPKX_WchUc,364
|
|
70
|
+
turnloop/experiments/suite/fixtures/misleading_traceback/test_invoice.py,sha256=A6boUcBPzIyVEZMgbTamoH-kT-qngXIaBOn3Zk2Ol_Y,217
|
|
71
|
+
turnloop/experiments/suite/fixtures/needle/inventory.py,sha256=pOTf1tvjAQA1G1euRy68ot_MIEhCtSTLZXR6Plbj9W4,356
|
|
72
|
+
turnloop/experiments/suite/fixtures/needle/pricing.py,sha256=0B8fIPk5S146oP5zGxzT9BexqEcCH-a8p6cmm1KUAYI,507
|
|
73
|
+
turnloop/experiments/suite/fixtures/needle/shipping.py,sha256=O3-RdlOk-whzi7_XzHJqygPl-2N-Z2-QNcX1VI_T5vY,352
|
|
74
|
+
turnloop/experiments/suite/fixtures/regression_trap/test_validators.py,sha256=GPjqw3Rx4yhO-01t78C-VUvHpmf4Jak0HdsVyTlViVo,386
|
|
75
|
+
turnloop/experiments/suite/fixtures/regression_trap/validators.py,sha256=590A20wstukC-eWcfEBlalfVxVVHqdHbpixSZ2dJ5GI,730
|
|
76
|
+
turnloop/experiments/suite/fixtures/rename/billing.py,sha256=u9fXJrVz6m6t53rQ0BW7TCUg_AfSednKaGsG2Kktkq8,198
|
|
77
|
+
turnloop/experiments/suite/fixtures/rename/report.py,sha256=Xjy-caz3SRT7tIaVQWS2T_M60IWfdh-LLWYunuVBNck,124
|
|
78
|
+
turnloop/experiments/suite/fixtures/rename/test_billing.py,sha256=NlOwv3q-qJEaMbyu2pc5C7Dyd5UfWUCM5AZ9MzuDS40,233
|
|
79
|
+
turnloop/experiments/suite/fixtures/spec/parser.py,sha256=1SIqVTHZB95-16ubrHN8hquk2eMJQXR2EXMgEoIqiP4,677
|
|
80
|
+
turnloop/experiments/suite/fixtures/spec/test_parser.py,sha256=1sEo0jgL-Iaa7gRSOVgK50qAEvtrn7Z-QAl9oSvIj5I,558
|
|
81
|
+
turnloop/experiments/suite/fixtures/subtle_spec_edge/leaderboard.py,sha256=NG525gNQDCQ8ygwOsU6BVMbw7CbHNUV-U1s87_gwXkY,501
|
|
82
|
+
turnloop/experiments/suite/fixtures/subtle_spec_edge/test_leaderboard.py,sha256=PhYKp5zVxFKzV9i5ZM9MLdaGeQTHzyCYVKSqDw1yjKU,947
|
|
83
|
+
turnloop/experiments/suite/fixtures/util/util.py,sha256=_d6FE9INeizmANal-fXKswGpFUcoUgMhLh3ru1WKSxQ,196
|
|
84
|
+
turnloop/hooks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
85
|
+
turnloop/hooks/runner.py,sha256=LB5YevoPLUvffSySku9DizRKJjkLHHCIO7jT_aw3H0Y,8143
|
|
86
|
+
turnloop/mcp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
87
|
+
turnloop/mcp/adapter.py,sha256=xgFpTjsK_BzX-hq4J1sSsvRu2B3m-iUxTbJpGq5SlYc,3938
|
|
88
|
+
turnloop/mcp/client.py,sha256=oaYg9Yjyhi1eF9OsrJCT2zvYvolil81A7AUo5qC9bus,11280
|
|
89
|
+
turnloop/permissions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
90
|
+
turnloop/permissions/engine.py,sha256=8en04QmiE7r_4j6CE-LeZWN47eBL7i6O5tefZ2vm_w8,7297
|
|
91
|
+
turnloop/permissions/rules.py,sha256=pDbcx4zTGxR7i-6K8jnk7r6BsxWs-xH46y74hyMMB88,10399
|
|
92
|
+
turnloop/providers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
93
|
+
turnloop/providers/anthropic.py,sha256=KE0-YUWbUoWf0kxrxGaFMXJ5DxocONtDEQiff4QN3jE,12535
|
|
94
|
+
turnloop/providers/base.py,sha256=fdxgyJ36Z1Lf-SvNzofmli8Fp3W6DUtLq9vJIiUSG0s,13685
|
|
95
|
+
turnloop/providers/gemini.py,sha256=64bLLklIE2IfYmdoYaxUlET7XlQ1l-RNhIOwtmV5ijg,8450
|
|
96
|
+
turnloop/providers/mock.py,sha256=8OC0Pk_5wP8sA20ZPa_uSGUP7lPLuCCWJNCDdqytnus,8837
|
|
97
|
+
turnloop/providers/openai_compat.py,sha256=KUi2AeCK7TP6XeN202iGriS81q0fKt2eY-RvSvaDIbc,13552
|
|
98
|
+
turnloop/providers/pricing.py,sha256=6HNnIO2I4O2rpKXAUQXJlH3VGHCB-KEDvbhBxkSDg4w,7208
|
|
99
|
+
turnloop/providers/registry.py,sha256=Tu0ZhI22gldb4Yf75vMdAc_5hm0tJVyfDwlGG9wnYww,2424
|
|
100
|
+
turnloop/providers/sse.py,sha256=OWyL8Ilg-75h-na36oJnKhckidOoEYcy1JNfJXbuczY,3576
|
|
101
|
+
turnloop/sessions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
102
|
+
turnloop/sessions/models.py,sha256=pYycb27mLA8DDrg2LHxoy4BMbgW1nbIg3UxIEuEsFvI,4772
|
|
103
|
+
turnloop/sessions/store.py,sha256=bTL7DSekZGlMKtT-kJFegC5Fhw1skOsC9gCMswvam7U,9700
|
|
104
|
+
turnloop/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
105
|
+
turnloop/tools/ask.py,sha256=PAQ6PX2xq1htqoZRmJyz3GbQG-MK6q6oIQBhgvcpaqc,5405
|
|
106
|
+
turnloop/tools/base.py,sha256=GQccppJCI8c4EdGxzSFWxlZAfQqL_3DseA3gSw8dTIg,10350
|
|
107
|
+
turnloop/tools/bash.py,sha256=q1qZQmYRgm6fj7-2tTAJb_VY4ksZo-j5MM9-6dIKEIE,16321
|
|
108
|
+
turnloop/tools/builtin.py,sha256=wUox6CcXZCnbsXjWyvS1l6xuIBe6VJjklsL3_WvQDUw,1942
|
|
109
|
+
turnloop/tools/edit.py,sha256=xip1y8Bo3bPTuLiz70DjhX4nvn0edjZK242JpRY44rs,9523
|
|
110
|
+
turnloop/tools/glob.py,sha256=uu7BUR2WGOvCkoL1gICeR6YRL_0pHAV_Yq4DiENns_c,8336
|
|
111
|
+
turnloop/tools/grep.py,sha256=uqVIx6737I7U3LSsbH0mfz0t4Gt7w0GigIukCCcvBeA,11766
|
|
112
|
+
turnloop/tools/read.py,sha256=Xy2wPwQxqTYn4RaNXNaYqlIBY-vdPx6gSpZj-TkJVNU,5717
|
|
113
|
+
turnloop/tools/runner.py,sha256=Yz9BhtdC6Re3jwkg2jVH5f7ajoPjkBpK1AnyMAfKjD8,11358
|
|
114
|
+
turnloop/tools/shell.py,sha256=Tgwhi0uplta1vpyF7J3T0KR2XQVV_Rg08SEHhFHpAFg,7920
|
|
115
|
+
turnloop/tools/skill.py,sha256=f_Ga_jzcNEGWTnIONr8vUcethTjZyAYXvCb4AL_j2tM,3319
|
|
116
|
+
turnloop/tools/task.py,sha256=HcV8lDHjR0G22seotRQZFRJ3CfcfFHNZJZ-H4sJWnU8,6630
|
|
117
|
+
turnloop/tools/textio.py,sha256=vtgXXpVrIJ6ElktSuc6HMhm81B_LdPuK9S8hsjm-EHA,2993
|
|
118
|
+
turnloop/tools/todo.py,sha256=i4qUKJSZvkGst-alsJUb3rCf1v5uVoIQCdTGVDsN1WI,5580
|
|
119
|
+
turnloop/tools/webfetch.py,sha256=l4rHjE79l0kuAoMMZRhYfu-_twjZyKGeHq5mQ-EY9v0,8896
|
|
120
|
+
turnloop/tools/write.py,sha256=YiaQq30AY67aBkdRBrJW-kKseJgcAr18URhT7NUiK-w,3984
|
|
121
|
+
turnloop/tui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
122
|
+
turnloop/tui/app.py,sha256=qdsy3tRWokyW_J4TEmUCiSrhFGDCryjOmeJyVii2idY,13059
|
|
123
|
+
turnloop/tui/app.tcss,sha256=WcNyErE74raQ6zUKE2SJWTB9IUErz0w945iLhKBDAgA,1039
|
|
124
|
+
turnloop/tui/bridge.py,sha256=3TjgbAyrwtd3zg1K0XpKUDgByERdJWWeEH_YeCV-2DY,5205
|
|
125
|
+
turnloop/tui/widgets/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
126
|
+
turnloop/tui/widgets/permission.py,sha256=UQ6KaJUmMaBjdt8KNxajzYGppwCAKZTKr5aeRJy9JhY,4665
|
|
127
|
+
turnloop/tui/widgets/status.py,sha256=SLwMrOCAHnggyitjri_LRV7rnV9LTr2UPvFBFDmtJxA,3649
|
|
128
|
+
turnloop/tui/widgets/transcript.py,sha256=sO1AW9wFdhXM29xdAi5CcXWumj3FuYe2sK4jscwGLS4,5667
|
|
129
|
+
turnloop-0.1.0.dist-info/METADATA,sha256=ysOOMoxIzVOH5ZUAF5rdlAoXsnXa-9OZTwtGhx_o0lA,40996
|
|
130
|
+
turnloop-0.1.0.dist-info/WHEEL,sha256=lCkmxWfQsSc9CfIClYeavTdQeEX2toPqufh9gI35EQA,87
|
|
131
|
+
turnloop-0.1.0.dist-info/entry_points.txt,sha256=Fe-djOTpH7x5NS1GitpsQSkROpR38H4oPirZ_FKyTj8,70
|
|
132
|
+
turnloop-0.1.0.dist-info/RECORD,,
|