synapse-cli-agent 0.1.51__tar.gz → 0.1.53__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/CHANGELOG.md +37 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/PKG-INFO +1 -1
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/pyproject.toml +1 -1
- synapse_cli_agent-0.1.53/release_body.md +17 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/mcp_client.py +44 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/models/persist.py +4 -1
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/models/registry.py +6 -1
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/daemon/application.py +10 -7
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/daemon/codex_usage.py +22 -6
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/daemon/entry.py +29 -1
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/access.py +99 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/contract_manifest.json +814 -63
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/contract_registry.py +222 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/local.py +449 -0
- synapse_cli_agent-0.1.53/src/synapse/runtime/service/mcp_management.py +135 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/model_management.py +10 -1
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/ports.py +47 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/transport/protocol.py +81 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/settings/config_paths.py +95 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/web_console/host.py +14 -7
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_codex_usage.py +71 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_contract_manifest.py +27 -0
- synapse_cli_agent-0.1.53/tests/test_runtime_service_mcp.py +265 -0
- synapse_cli_agent-0.1.53/tests/test_runtime_service_models.py +201 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_web_console_host.py +21 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/uv.lock +1 -1
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/README.md +3 -0
- synapse_cli_agent-0.1.51/web/dist/assets/abnfDiagram-O67JEVCF-Ca2viSWK.js → synapse_cli_agent-0.1.53/web/dist/assets/abnfDiagram-O67JEVCF-Cci1krGM.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/arc-Korkws-q.js → synapse_cli_agent-0.1.53/web/dist/assets/arc-CFaVefj0.js +1 -1
- synapse_cli_agent-0.1.53/web/dist/assets/architecture-7GRP2DOG-BPXFlr-O.js +1 -0
- synapse_cli_agent-0.1.51/web/dist/assets/architectureDiagram-NJMV4G6O-Dr4dH0c_.js → synapse_cli_agent-0.1.53/web/dist/assets/architectureDiagram-NJMV4G6O-DW2uW-5O.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/blockDiagram-BEXU5L5S-D1G312Oa.js → synapse_cli_agent-0.1.53/web/dist/assets/blockDiagram-BEXU5L5S-jE9_YgDd.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/c4Diagram-YGBWAQC7-1B4RgYZX.js → synapse_cli_agent-0.1.53/web/dist/assets/c4Diagram-YGBWAQC7-DC22AEFK.js +1 -1
- synapse_cli_agent-0.1.53/web/dist/assets/channel-BvLC-43i.js +1 -0
- synapse_cli_agent-0.1.51/web/dist/assets/chunk-3FUC2YCW-alCRCark.js → synapse_cli_agent-0.1.53/web/dist/assets/chunk-3FUC2YCW-C8tiTc0a.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/chunk-5DYCD2WN-BROgnkA0.js → synapse_cli_agent-0.1.53/web/dist/assets/chunk-5DYCD2WN-CNwblLHO.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/chunk-742MDFTN-HP-GyORn.js → synapse_cli_agent-0.1.53/web/dist/assets/chunk-742MDFTN-CDiuTLaa.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/chunk-7INBJB4K-DVWCYjYR.js → synapse_cli_agent-0.1.53/web/dist/assets/chunk-7INBJB4K-CZTkbc2s.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/chunk-7M6MHVWA-DRvOt0m3.js → synapse_cli_agent-0.1.53/web/dist/assets/chunk-7M6MHVWA-P0uXjgRo.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/chunk-7PRAP22T-UmBCuI2g.js → synapse_cli_agent-0.1.53/web/dist/assets/chunk-7PRAP22T-C3xitbZV.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/chunk-GTNCS2PH-DkSYrDWc.js → synapse_cli_agent-0.1.53/web/dist/assets/chunk-GTNCS2PH-DacuY9FB.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/chunk-GWA4HPMP-BaBFO5PS.js → synapse_cli_agent-0.1.53/web/dist/assets/chunk-GWA4HPMP-BhLhnRUQ.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/chunk-MBY4JIJT-J8w8CrlG.js → synapse_cli_agent-0.1.53/web/dist/assets/chunk-MBY4JIJT-CdDG-trx.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/chunk-NETBCI7D-Ov4CppAN.js → synapse_cli_agent-0.1.53/web/dist/assets/chunk-NETBCI7D-CYUXxvAs.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/chunk-O7XYJQB3-DqYPAXMt.js → synapse_cli_agent-0.1.53/web/dist/assets/chunk-O7XYJQB3-CE4rJhx8.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/chunk-UA2S7LBM-ByX_-es3.js → synapse_cli_agent-0.1.53/web/dist/assets/chunk-UA2S7LBM-i12o60ZZ.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/chunk-WEXAMYUT-0XkMG9Lf.js → synapse_cli_agent-0.1.53/web/dist/assets/chunk-WEXAMYUT-CIssFQpC.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/chunk-XXDRQBXY-B8nSRbEE.js → synapse_cli_agent-0.1.53/web/dist/assets/chunk-XXDRQBXY-Q9XVUxSn.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/chunk-Z7XXMR3K-DG7nrl_Y.js → synapse_cli_agent-0.1.53/web/dist/assets/chunk-Z7XXMR3K-WFh0rCwX.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/chunk-ZIGJFQKS-qfa0HyJX.js → synapse_cli_agent-0.1.53/web/dist/assets/chunk-ZIGJFQKS-BGi6XM61.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/classDiagram-v2-NBCMYWYE-BXaTqsWU.js → synapse_cli_agent-0.1.53/web/dist/assets/classDiagram-v2-NBCMYWYE-C3IF0u6G.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/cose-bilkent-JH36ORCC-1BCnjLaF.js → synapse_cli_agent-0.1.53/web/dist/assets/cose-bilkent-JH36ORCC-BK9VsQhC.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/cynefin-OW5HDTMX-DNY9yOzb.js → synapse_cli_agent-0.1.53/web/dist/assets/cynefin-OW5HDTMX-PAS0CrLO.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/cynefinDiagram-VND7K2PF-BYJGvojh.js → synapse_cli_agent-0.1.53/web/dist/assets/cynefinDiagram-VND7K2PF-sEjjvtCz.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/dagre-6A5THRUB-CFLklyHq.js → synapse_cli_agent-0.1.53/web/dist/assets/dagre-6A5THRUB-vV7GmK5w.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/diagram-22UHCM2B-C2yvXMtd.js → synapse_cli_agent-0.1.53/web/dist/assets/diagram-22UHCM2B-YWcLybL7.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/diagram-3UASUU5V-kVnLa-KL.js → synapse_cli_agent-0.1.53/web/dist/assets/diagram-3UASUU5V-IPdnwVO1.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/diagram-ATOU4E4O-FwnF3K5P.js → synapse_cli_agent-0.1.53/web/dist/assets/diagram-ATOU4E4O-C4D-eJTg.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/diagram-CDSNMT55-hJBDNtk1.js → synapse_cli_agent-0.1.53/web/dist/assets/diagram-CDSNMT55-fc350pA6.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/diagram-MLGK6HIB-BWv_2tcH.js → synapse_cli_agent-0.1.53/web/dist/assets/diagram-MLGK6HIB-Ceb5UY5l.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/diagram-MPIPVDR6-BLO-giV1.js → synapse_cli_agent-0.1.53/web/dist/assets/diagram-MPIPVDR6-B4fdJ19T.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/dist-BV3CWK7x.js → synapse_cli_agent-0.1.53/web/dist/assets/dist-D6yOa6Wt.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/ebnfDiagram-ZINNZB2B-C4zhkIfL.js → synapse_cli_agent-0.1.53/web/dist/assets/ebnfDiagram-ZINNZB2B-CHddadQI.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/elk-276RUBZZ-DOzVFwBT.js → synapse_cli_agent-0.1.53/web/dist/assets/elk-276RUBZZ-CQFoOq5m.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/erDiagram-OPXOYQCR-CPdnosvq.js → synapse_cli_agent-0.1.53/web/dist/assets/erDiagram-OPXOYQCR-Ou_f2CSM.js +1 -1
- synapse_cli_agent-0.1.53/web/dist/assets/eventmodeling-NTZA5JFV-DmdM_JdR.js +1 -0
- synapse_cli_agent-0.1.53/web/dist/assets/flowDiagram-KWPJA3E3-qgPSkUfZ.js +1 -0
- synapse_cli_agent-0.1.51/web/dist/assets/ganttDiagram-FUAMR5RP--uUBIcPI.js → synapse_cli_agent-0.1.53/web/dist/assets/ganttDiagram-FUAMR5RP-CCV3lJPQ.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/gitGraph-4MIJSDKK-DITT2As5.js → synapse_cli_agent-0.1.53/web/dist/assets/gitGraph-4MIJSDKK-CaxXywkK.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/gitGraphDiagram-X574FWY7-BQzNkGBx.js → synapse_cli_agent-0.1.53/web/dist/assets/gitGraphDiagram-X574FWY7-BZIoRN04.js +1 -1
- synapse_cli_agent-0.1.53/web/dist/assets/index-B_Bkqq-Y.css +1 -0
- synapse_cli_agent-0.1.53/web/dist/assets/index-D7tX5clf.js +304 -0
- synapse_cli_agent-0.1.51/web/dist/assets/info-A6RAGUB7-BHmhDsar.js → synapse_cli_agent-0.1.53/web/dist/assets/info-A6RAGUB7-BsZo473Z.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/infoDiagram-VRGFBTTK-DKI0ndxO.js → synapse_cli_agent-0.1.53/web/dist/assets/infoDiagram-VRGFBTTK-Ur9f3Y6c.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/ishikawaDiagram-OU5B5YK6-BbUxWrnu.js → synapse_cli_agent-0.1.53/web/dist/assets/ishikawaDiagram-OU5B5YK6-BV_cI5Sk.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/journeyDiagram-ZHPQQLJL-BK1qckd_.js → synapse_cli_agent-0.1.53/web/dist/assets/journeyDiagram-ZHPQQLJL-BWkFr0lv.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/kanban-definition-PNTS6WVX-D2dOa4Ab.js → synapse_cli_agent-0.1.53/web/dist/assets/kanban-definition-PNTS6WVX-7CAuuYkO.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/line-Cjyrjw83.js → synapse_cli_agent-0.1.53/web/dist/assets/line-uYRJLP3K.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/linear-BIRof-33.js → synapse_cli_agent-0.1.53/web/dist/assets/linear-BN8482Ry.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/mermaid-parser.core-Dzdifpma.js → synapse_cli_agent-0.1.53/web/dist/assets/mermaid-parser.core-Bs_1_-vr.js +3 -3
- synapse_cli_agent-0.1.51/web/dist/assets/mermaid.core-DYYFpeI2.js → synapse_cli_agent-0.1.53/web/dist/assets/mermaid.core-DtnQtuHn.js +4 -4
- synapse_cli_agent-0.1.51/web/dist/assets/mindmap-definition-NLK3R4M7-BrLFi5F5.js → synapse_cli_agent-0.1.53/web/dist/assets/mindmap-definition-NLK3R4M7-NZa_GQbl.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/packet-AYTQ26CC-BWJsIxls.js → synapse_cli_agent-0.1.53/web/dist/assets/packet-AYTQ26CC-Cn4Fk89T.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/pegDiagram-GJSIUBJH-DGMjDUpV.js → synapse_cli_agent-0.1.53/web/dist/assets/pegDiagram-GJSIUBJH-DLw7yK1S.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/pie-WAS4IAKB-SQt20dtg.js → synapse_cli_agent-0.1.53/web/dist/assets/pie-WAS4IAKB-Bu8JPdL0.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/pieDiagram-5QR66LMP-GWNXU_Px.js → synapse_cli_agent-0.1.53/web/dist/assets/pieDiagram-5QR66LMP-DAbpJhIi.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/quadrantDiagram-O4NWA36T-DQolg9Ty.js → synapse_cli_agent-0.1.53/web/dist/assets/quadrantDiagram-O4NWA36T-BG7qGFdv.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/radar-RG4KPBEZ-BPHiQw8S.js → synapse_cli_agent-0.1.53/web/dist/assets/radar-RG4KPBEZ-2x2LDTfl.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/railroad-74A4TZTK-pWKDRKBm.js → synapse_cli_agent-0.1.53/web/dist/assets/railroad-74A4TZTK-DdcXh10p.js +1 -1
- synapse_cli_agent-0.1.53/web/dist/assets/railroad-abnf-HS5TGJTU-Dv9iqnvc.js +1 -0
- synapse_cli_agent-0.1.53/web/dist/assets/railroad-ebnf-LZEXJU2U-D8QcAy9h.js +1 -0
- synapse_cli_agent-0.1.53/web/dist/assets/railroad-peg-WCYAUIDC-aIuMpN1t.js +1 -0
- synapse_cli_agent-0.1.51/web/dist/assets/railroadDiagram-XR7U4H2S-D56iUCtk.js → synapse_cli_agent-0.1.53/web/dist/assets/railroadDiagram-XR7U4H2S-aMy5yyaa.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/requirementDiagram-PLB6GJNP-vivyFD04.js → synapse_cli_agent-0.1.53/web/dist/assets/requirementDiagram-PLB6GJNP-DIQ4utGF.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/sankeyDiagram-IPEJSGJF-9AZrTwjQ.js → synapse_cli_agent-0.1.53/web/dist/assets/sankeyDiagram-IPEJSGJF-DXH8KV_9.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/sequenceDiagram-PO4LG4MO-B8Sd4b_U.js → synapse_cli_agent-0.1.53/web/dist/assets/sequenceDiagram-PO4LG4MO-D8lTT2VA.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/src-BQVoOKtV.js → synapse_cli_agent-0.1.53/web/dist/assets/src-BcgobdJX.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/stateDiagram-v2-GCMORJYK-BAFwvkOa.js → synapse_cli_agent-0.1.53/web/dist/assets/stateDiagram-v2-GCMORJYK-B0swH9xM.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/swimlanes-2SLR337P-CsLrPSe3.js → synapse_cli_agent-0.1.53/web/dist/assets/swimlanes-2SLR337P-DbaRV2vd.js +1 -1
- synapse_cli_agent-0.1.53/web/dist/assets/swimlanesDiagram-TC7HE7FX-DT6c7xmF.js +8 -0
- synapse_cli_agent-0.1.51/web/dist/assets/timeline-definition-EJHVYXUP-B33BqC90.js → synapse_cli_agent-0.1.53/web/dist/assets/timeline-definition-EJHVYXUP-JS5GRL3G.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/treeView-Q6P3EWNA-CkfNwCqV.js → synapse_cli_agent-0.1.53/web/dist/assets/treeView-Q6P3EWNA-CQSeuOP3.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/treemap-WGGIJYW6-CEi1ALrR.js → synapse_cli_agent-0.1.53/web/dist/assets/treemap-WGGIJYW6-DEtS9qV5.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/usecaseDiagram-POWQR4AR-B9_asz1y.js → synapse_cli_agent-0.1.53/web/dist/assets/usecaseDiagram-POWQR4AR-AjcCxt6T.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/vennDiagram-UO4OBE2U-BAi0IGvD.js → synapse_cli_agent-0.1.53/web/dist/assets/vennDiagram-UO4OBE2U-WH4FyMBJ.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/wardley-WFR3VGLG-S_FQ_bZY.js → synapse_cli_agent-0.1.53/web/dist/assets/wardley-WFR3VGLG-BOWg62VE.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/wardleyDiagram-VNRHLVJA-9CyigB7k.js → synapse_cli_agent-0.1.53/web/dist/assets/wardleyDiagram-VNRHLVJA-1zhPniXJ.js +1 -1
- synapse_cli_agent-0.1.51/web/dist/assets/xychartDiagram-PMCCYNJV-C9XeHDDa.js → synapse_cli_agent-0.1.53/web/dist/assets/xychartDiagram-PMCCYNJV-CQaQ906W.js +1 -1
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/index.html +2 -2
- synapse_cli_agent-0.1.53/web/src/components/McpMaintenanceSection.tsx +991 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/McpPanel.tsx +61 -10
- synapse_cli_agent-0.1.53/web/src/components/ModelMaintenanceSection.tsx +1135 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/SettingsDialog.tsx +84 -2
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/UsageDashboardDialog.tsx +1 -11
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/runtime-client/SynapseRuntimeClient.ts +73 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/runtime-client/contract.generated.ts +203 -2
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/runtime-client/types.ts +13 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/codexUsageController.ts +4 -9
- synapse_cli_agent-0.1.53/web/src/stores/lastProject.ts +18 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/useConsoleStore.ts +75 -20
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/codexUsageController.test.ts +5 -5
- synapse_cli_agent-0.1.53/web/tests/lastProject.test.ts +38 -0
- synapse_cli_agent-0.1.53/web/tests/mcpMaintenanceContract.test.ts +75 -0
- synapse_cli_agent-0.1.53/web/tests/modelMaintenanceContract.test.ts +78 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/sourceGuard.test.ts +3 -1
- synapse_cli_agent-0.1.51/release_body.md +0 -15
- synapse_cli_agent-0.1.51/web/dist/assets/architecture-7GRP2DOG-CM-XFxLL.js +0 -1
- synapse_cli_agent-0.1.51/web/dist/assets/channel-CEmtYDay.js +0 -1
- synapse_cli_agent-0.1.51/web/dist/assets/eventmodeling-NTZA5JFV-ryjLJyjq.js +0 -1
- synapse_cli_agent-0.1.51/web/dist/assets/flowDiagram-KWPJA3E3-LVqr1vwM.js +0 -1
- synapse_cli_agent-0.1.51/web/dist/assets/index-BqZpA703.css +0 -1
- synapse_cli_agent-0.1.51/web/dist/assets/index-DXhdrybj.js +0 -295
- synapse_cli_agent-0.1.51/web/dist/assets/railroad-abnf-HS5TGJTU-CbXianX1.js +0 -1
- synapse_cli_agent-0.1.51/web/dist/assets/railroad-ebnf-LZEXJU2U-CXYlJOyr.js +0 -1
- synapse_cli_agent-0.1.51/web/dist/assets/railroad-peg-WCYAUIDC-JCtl2G0z.js +0 -1
- synapse_cli_agent-0.1.51/web/dist/assets/swimlanesDiagram-TC7HE7FX-VEAJ-Xjj.js +0 -8
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/.dockerignore +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/.github/workflows/ci.yml +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/.github/workflows/docs.yml +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/.github/workflows/native-compression-wheels.yml +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/.github/workflows/native-core-tool-wheels.yml +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/.github/workflows/release.yml +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/.gitignore +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/.python-version +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/.readthedocs.yaml +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/.zed/settings.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/AGENTS.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/Dockerfile.web +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/LICENSE +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/README.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/README.zh-CN.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/agent_upstream.txt +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/approval-behavior.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/assets/demo.gif +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/assets/synapse-logo.svg +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/assets/tui-preview.png +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/bucket/synapse.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/cli_upstream.txt +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/debug_compact.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/decode_screenshot.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/acp-adapter/capability-matrix.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/acp-adapter/decisions.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/acp-adapter/index.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/acp-adapter/phase-0-protocol-baseline.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/acp-adapter/phase-1-core-transport.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/acp-adapter/phase-2-prompt-semantics.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/acp-adapter/phase-3-permissions.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/acp-adapter/phase-4-session-lifecycle.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/acp-adapter/phase-5-session-mcp.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/acp-adapter/phase-6-client-services.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/acp-adapter/phase-7-advanced-capabilities.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/acp-adapter/phase-8-compliance.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/acp-adapter/progress.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-development-guide.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-decoupling/baseline-report.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-decoupling/decisions.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-decoupling/index.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-decoupling/migration.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-decoupling/phase-0-baseline.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-decoupling/phase-1-streaming-core.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-decoupling/phase-2-turn-runtime.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-decoupling/phase-3-tui-cutover.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-decoupling/phase-4-session-runtime.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-decoupling/phase-5-multi-session.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-decoupling/phase-6-project-runtime.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-decoupling/phase-7-global-control-plane.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-decoupling/phase-8-hardening.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-decoupling/post-review-fix-plan.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-decoupling/progress.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-service/adr-s-011-event-contract.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-service/adr-s-014-access-control.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-service/adr-s-015-json-rpc-websocket.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-service/adr-s-016-daemon.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-service/adr-s-017-reconnect-version-negotiation.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-service/adr-s-018-consumer-cutover.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-service/adr-s-019-contract-freeze.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-service/decisions.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-service/index.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-service/progress.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-service/s2-lifecycle-verification.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-service/s7-wire-protocol.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/agent-runtime-service/s9-compatibility-matrix.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/checkpoint-snapshot-tuning.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/cli.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/codex-session-discovery-phase-1.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/codex-session-import-phase-2.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/config.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/design.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/docker-web.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/index.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/install.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/math-formulas-test.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/mcp.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/models.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/native-compression-core.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/native-core-tool.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/permissions.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/prototypes/todo_layout_prototype.html +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/prototypes/usage_dashboard_prototype.html +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/quickstart.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/sessions.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/skills.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/smith_output.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/subagents.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/tool-output-transform.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/tui-cursor-refactor.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/tutorial.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/web-console/architecture-review.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/web-console/formal-host.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/web-console/index.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/web-console/progress.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/docs/x-agent-development-guide.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/examples/mcp.example.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/examples/models.example.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/examples/settings.example.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/middleware_upstream.txt +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/mkdocs.yml +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/rust/synapse-gui/binaries/.gitkeep +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/scripts/build_check_rust_openai.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/scripts/compact_synapse_db.ps1 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/scripts/export_contract_manifest.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/scripts/install.ps1 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/scripts/make_transparent_glyph.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/scripts/reclaim_checkpoint_snapshots.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/scripts/release.ps1 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/scripts/render_icon.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/scripts/serve_web.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/scripts/web-console-desktop.ps1 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/skills-lock.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/slash_cmds_upstream.txt +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/__main__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/acp/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/acp/agent.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/acp/client_services.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/acp/content.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/acp/events.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/acp/lifecycle.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/acp/mcp.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/acp/permissions.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/acp/server.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/acp/sessions.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/acp/updates.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/app/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/app/agent.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/app/agent_assembly.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/app/agent_md.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/app/state_schema.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/cli.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/commands/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/commands/compression.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/commands/goal.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/commands/helpers.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/commands/mcp.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/commands/model.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/commands/result.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/commands/sessions.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/commands/slash_cmds.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/commands/slash_complete.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/commands/theme.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/config.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/content/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/content/environment.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/content/input_history.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/content/multimodal.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/content/prompt_sections.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/content/prompts.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/content/skills_catalog.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/entry.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/goals/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/goals/middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/goals/model.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/goals/runtime.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/goals/steering.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/goals/store.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/goals/tools.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/checkpoint_seed.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/codex_config.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/codex_history.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/codex_import.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/codex_sessions.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/describe_image.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/herdr.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/http_clients.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/llm_openai_compat.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/llm_openai_websocket.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/openai_oauth.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/openai_oauth_middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/openai_usage.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/turbo.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/vision_middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/memory/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/memory/auto_recorder.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/memory/embedder.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/memory/long_term.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/models/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/models/config.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/models/helpers.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/models/profile.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/models/providers.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/models/rust_openai.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/models_registry.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/observability/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/observability/debug_inspector.html +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/observability/debug_server.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/observability/error_log.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/observability/exit_trace.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/observability/heap_dump.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/observability/llm_debug.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/observability/startup_trace.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/planner/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/planner/task_planner.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/projects/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/projects/catalog.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/rag/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/rag/knowledge_base.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/agent_loop/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/agent_loop/model.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/agent_loop/request.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/agent_loop/turn.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/async_runtime.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/backends.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/cancellation.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/consumer.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/context_compact.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/daemon/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/daemon/__main__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/daemon/auth.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/daemon/config.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/daemon/launcher.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/daemon/lease.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/debug_capture_middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/execute_capture.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/filesystem_tool_prompt_middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/fs_permissions.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/harness.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/hitl.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/image_window_middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/interaction_ledger.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/model_request_compression_middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/pathing.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/projects/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/projects/identity.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/projects/runtime.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/prompt_cache_boundary_middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/safety.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/artifact_filesystem.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/artifacts.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/attachment_image.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/attachment_store.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/attachments.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/codex_usage.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/commands.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/config_source.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/contract_export.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/directory_browse.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/errors.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/event_types.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/events.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/external_apps.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/fs_browse.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/git.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/goal_commands.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/goal_management.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/history.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/history_store.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/project_list.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/project_register.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/queries.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/recovery.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/revert.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/routing.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/runtime_config.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/screenshot.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/screenshot_service.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/screenshot_tool.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/session_management.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/session_metadata.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/skills.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/stt.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/service/subagent_management.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/session_header_middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/session_headers.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/session_prewarm.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/sessions/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/sessions/errors.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/sessions/events.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/sessions/manager.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/sessions/persistence.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/sessions/ref.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/sessions/runtime.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/steer.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/streaming/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/streaming/accumulator.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/streaming/adapters.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/streaming/events.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/streaming/parser.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/streaming/protocol.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/streaming/runtime.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/streaming/stream_events.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/streaming/tool_model.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/stt_config_persist.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/subagent_config_persist.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/subagent_specs.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/subagents.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/summarization_tuning.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/timeline.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/token_rate.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/tool_contract.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/tool_ignore.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/tool_output_eval.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/tool_output_middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/tool_output_usage_middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/transport/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/transport/client.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/transport/client_goal.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/transport/websocket.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/turn_reverts.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/workspace_changes.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/sessions/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/sessions/cancel_repair.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/sessions/checkpoint_gc.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/sessions/search_index.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/sessions/store.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/sessions/summary.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/sessions/thread_purge.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/sessions/transcript.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/sessions/transcript_migration.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/sessions/transcript_projection.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/settings/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/settings/schema.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/stt/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/stt/credentials.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/stt/doubao.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/stt/engine.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/stt/models.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/stt/providers.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/stt/session.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/subagents.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/tool_output/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/tool_output/detection.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/tool_output/jsonio.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/tool_output/metrics.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/tool_output/models.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/tool_output/pipeline.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/tool_output/repository.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/tool_output/transformers.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/tools/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/tools/describe_image.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/tools/filesystem_patch.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/tools/filesystem_search.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/tools/session_tools.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/agent_lifecycle.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/answer_divider.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/approval.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/bottombar/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/bottombar/components/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/bottombar/components/codex_usage.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/bottombar/components/fast.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/bottombar/components/goal.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/bottombar/components/key_hints.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/bottombar/components/mcp.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/bottombar/components/mode.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/bottombar/components/model.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/bottombar/components/thread.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/bottombar/components/turbo.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/bottombar/components/turn_stats.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/bottombar/context.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/bottombar/core.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/chrome/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/chrome/controller.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/clipboard.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/active_session_switcher.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/base.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/codex_config_import.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/codex_reset.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/codex_session_list.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/compression_diagnostics.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/controller.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/git_explore.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/mcp_panel.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/model_form.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/model_manager.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/model_picker.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/provider_catalog.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/safety_panel.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/session_list.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/subagent_config.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/theme_designer.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/dialogs/theme_picker.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/drawer.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/formatters.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/git_explore/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/git_explore/engine.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/git_explore/provider.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/git_explore/unified.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/image_preview.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/image_render.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/image_viewer.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/math_image.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/mermaid_image.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/prompt_controller.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/rendering.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/selectable_static.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/selectable_text.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/sink.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/status_controller.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/steer_controller.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/steer_widget.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/stream.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/stream_events.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/stream_runtime.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/textual_lifecycle.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/textual_stream_sink.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/theme.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/theme_controller.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/timeline.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/tool_blocks.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/topbar/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/topbar/components/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/topbar/components/branch.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/topbar/components/title.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/topbar/components/tool_output.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/topbar/components/usage.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/topbar/components/workspace.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/topbar/context.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/topbar/core.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/topbar/git_changes_popover.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/topbar/git_chrome.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/topbar/tool_output_popover.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/topbar/widget.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/transcript/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/transcript/controller.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/transcript/factory.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/transcript/history.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/transcript/state.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/transcript_blocks.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/tui.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/tui_launch.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/tui_styles.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/turn/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/turn/controller.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/turn/event_bridge.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/turn/event_renderer.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/turn/persistence.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/turn/request.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/turn/runtime_events.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/turn/service_session.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/turn_rail.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/turn_rail_widgets.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/user_turn.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/user_turn_block.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/welcome.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/ui/workspace.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/web.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/web_console/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/web_console/config.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/web_console/entry.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/web_console/security.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/web_console/usage_stats.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/subagent_prototype.html +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/synapse.cmd +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/__init__.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/acp_service_fakes.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/conftest.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/acp/initialize.jsonl +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/agent_stream/core_scenarios.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/codex_rollouts/duplicate_response_item.jsonl +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/codex_rollouts/incomplete_and_aborted.jsonl +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/codex_rollouts/legacy_compaction.jsonl +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/codex_rollouts/normal_completed.jsonl +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/codex_rollouts/replacement_history.jsonl +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/codex_rollouts/rollback.jsonl +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/codex_rollouts/unsupported_replacement.jsonl +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/runtime_contract/fixtures.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/runtime_contract/v1/event_payload_samples.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/runtime_contract/v1/web_console_types.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/sample_repo/calculator.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/sample_repo/test_calculator.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/stt/speech.txt +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/stt/speech.wav +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/fixtures/tool_output_eval.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_acp_agent_service_s10.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_acp_p0_baseline.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_acp_p1_core.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_acp_p1_transport.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_acp_p2_content.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_acp_p2_events.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_acp_p2_updates.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_acp_p3_agent.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_acp_p3_permissions.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_acp_p4_history.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_acp_p4_lifecycle.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_acp_p5_mcp.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_acp_p6_client_services.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_acp_p8_compliance.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_acp_sessions_service_s10.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_agent_factory.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_agent_lifecycle.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_agent_turn_runtime.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_approval.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_async_checkpointer.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_backends.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_bottombar_registry.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_cancel_repair.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_capabilities.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_checkpoint_gc.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_checkpoint_seed.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_chrome_controller.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_cli.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_cli_codex_import.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_clipboard.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_codex_config.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_codex_history.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_codex_import.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_codex_sessions.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_codex_sessions_windows.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_compact_tool_descriptions.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_config.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_context_compact.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_context_window.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_debug_capture_middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_debug_inspector.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_describe_image.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_dialogs.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_entry.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_environment_context.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_error_log.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_filesystem_patch_tool.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_filesystem_search_tools.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_git_changes_popover.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_git_chrome.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_git_explore.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_goal_live_tui.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_goals.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_heap_dump.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_herdr_integration.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_http_clients.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_image_render.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_image_viewer.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_image_window_middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_input_history.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_iteration_abc.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_layered_config.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_markdown_image.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_math_image_render.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_mcp_schema.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_mermaid_image.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_mermaid_render.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_middleware_async.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_model_dialogs.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_model_providers.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_model_request_compression_middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_model_retry.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_models_persist.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_multimodal.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_native_math_render.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_openai_compat_reasoning.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_openai_oauth.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_openai_oauth_middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_openai_usage.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_openai_websocket.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_pathing.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_project_catalog.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_project_drawer.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_project_runtime.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_project_switch.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_prompt_cache_boundary.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_prompt_controller.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_prompt_sections.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_prompts.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_access_composition.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_architecture_boundaries.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_attachment_rebuild.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_attachments.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_attachments_wire.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_consumer_s10.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_daemon_launcher.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_daemon_s8.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_daemon_s8_hardening.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_daemon_s8_subprocess.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_hardening.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_manager.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_mcp_panel.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_persistence_b.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_project_admin.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_project_list.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_recovery_s4_a.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_recovery_s4_a_wire.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_access_history_s11.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_access_s6.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_approval_s10.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_artifacts_s4.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_config.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_contracts.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_events_s3.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_external_apps.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_git.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_history_s11.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_import_purity.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_lifecycle.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_local.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_revert.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_routing_s5.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_screenshot.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_service_subscription_overflow.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_session_goal.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_session_management.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_streaming.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_stt.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_transport_approval_s10.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_transport_client_compatibility.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_transport_client_methods_s9.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_transport_client_project_list.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_transport_client_s9.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_transport_client_skills.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_transport_client_watch_s9.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_transport_config.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_transport_goal.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_transport_history_s11.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_transport_project_thinking.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_transport_s7.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_transport_s9.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_transport_thinking.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_runtime_transport_websocket_s7.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_rust_openai_model.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_safety.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_search_index.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_session_headers.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_session_persistence.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_session_prewarm.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_session_runtime.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_session_store.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_session_summary.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_slash_and_mcp.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_slash_complete.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_slash_effects.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_startup_defer.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_startup_trace.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_state_schema.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_status_controller.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_steer.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_steer_controller.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_stream_cancel.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_stream_semantic_fixtures.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_stream_tool_items.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_stream_ui.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_stt.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_stt_config_persist.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_stt_doubao.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_stt_smoke.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_subagent_config_dialog.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_subagent_config_persist.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_subagent_environment.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_subagent_policy_integration.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_subagent_status.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_subagents.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_summarization_tuning.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_textual_stream_sink.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_theme.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_theme_controller.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_thread_purge.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_timeline.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_token_rate.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tool_blocks.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tool_contract.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tool_ignore.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tool_intent.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tool_output.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tool_output_eval.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tool_output_slash.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tool_output_usage_middleware.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tool_policy_guard.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_topbar_context_ratio.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_topbar_registry.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_transcript.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_transcript_controller.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_transcript_history.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_transcript_history_controller.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_transcript_migration.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_transcript_projection.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tui_active_session_switcher.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tui_codex_import.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tui_consumers_service_s10.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tui_controller_no_runtime_s10.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tui_controller_owner_encapsulation_s10.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tui_error_reporting.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tui_paste.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tui_project_id_cache.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tui_runtime_event_projection_s10.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tui_scroll_bottom.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tui_selection.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tui_service_session_s10.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tui_status_projection_s10.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tui_turn_controller_approval_watch_s10.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_tui_turn_controller_service_s10.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_turn_changes_emission.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_turn_controller.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_turn_event_renderer.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_turn_rail_minimap.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_turn_request.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_turn_reverts.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_turn_workspace_changes.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_usage_restore.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_user_turn_style.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_web_console_security.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_web_console_usage_stats.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_web_console_vertical.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_welcome.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/test_workspace_changes.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/tests/tool_output_plugin_fixture.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/.gitignore +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/.oxlintrc.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/AGENTS.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/_basePickBy-QJXUw_pr.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/_baseUniq-DR4vVjyC.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/array-BifhSqXX.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/chunk-2Q5K7J3B-C1jixKkw.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/chunk-5VM5RSS4-ZNzvKenW.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/chunk-DUW6YSOI-Dgx8z5s3.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/chunk-FOHPRMQF-CoA4358r.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/chunk-J5ZVWO5B-oDCd-gWO.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/chunk-JWPE2WC7-DVXcaiue.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/chunk-Y2CYZVJY-DsF7k-Jl.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/cytoscape.esm-B-1iW2ft.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/defaultLocale-BFoDCU3G.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/graphlib-C9Tl7QrK.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/init-C-OQMol4.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/katex-ZlcWpGUi.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/ordinal-BDEzSJ7C.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/path-fybaL0A-.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/rough.esm-Dy-Kn_BL.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/assets/sizeCapture-INFHLROL-B0uUizjq.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/favicon.svg +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/icon-192.png +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/icon-512.png +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/icon-maskable-512.png +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/icons.svg +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/dist/manifest.webmanifest +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/get_runtime_config.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/get_transcript.py +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/index.html +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/package-lock.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/package.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/postcss.config.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/public/favicon.svg +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/public/icon-192.png +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/public/icon-512.png +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/public/icon-maskable-512.png +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/public/icons.svg +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/public/manifest.webmanifest +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/App.css +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/App.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/assets/hero.png +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/assets/react.svg +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/assets/vite.svg +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/client/SynapseRuntimeClient.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/client/artifacts.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/client/artifactsDiff.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/client/bootstrap.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/client/deepLink.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/client/recoverability.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/client/runtimeStatus.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/client/tauri.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/client/types.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/client/usageStats.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/AddProjectDialog.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/ArtifactsPanel.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/AttachmentPreview.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/AttachmentThumb.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/BackgroundAlerts.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/BottomBar.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/CodeBlock.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/CodexUsagePanel.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/CommandInput.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/ConsoleActions.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/ErrorBoundary.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/FileRefButton.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/FileViewerHost.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/FloatingPanel.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/FloatingWindow.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/GeneratedHtml.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/GitDiffView.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/GitExplorer.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/GoalDialog.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/HelpDialog.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/ImageLightbox.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/Markdown.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/MarkdownImage.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/MathTex.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/MermaidBlock.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/ModelControls.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/OpenWithMenu.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/PairingGate.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/Portal.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/RecoveryNotice.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/RuntimeDiagnosticsBanner.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/ScreenshotTaskBanner.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/SessionDeleteDialog.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/SessionInfoPanel.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/SideBar.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/SpeechEngineSection.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/TauriWindowControls.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/TerminalOutput.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/TodoPanel.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/TopBar.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/Transcript.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/TurnRail.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/bottomBar/CodexMark.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/bottomBar/activityItem.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/bottomBar/codexUsageItem.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/bottomBar/contract.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/bottomBar/goalItem.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/bottomBar/helpItem.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/bottomBar/manifest.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/bottomBar/mcpItem.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/bottomBar/moreEntry.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/bottomBar/regions.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/bottomBar/telemetryItem.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/bottomBar/todoItem.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/AttachmentIdThumb.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/ImagePreviewFlyout.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/MentionFlyout.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/RichComposer.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/actions/ActionMenu.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/actions/ScreenshotActionArea.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/actions/addImageAction.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/actions/contract.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/actions/manifest.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/actions/screenshotSettingsAction.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/actions/windowScreenshotAction.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/attachmentUrl.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/composerDocument.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/composerSelection.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/localSpeechAudio.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/mentionCatalog.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/mentionOption.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/speechInput.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/sttEngine.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/useLocalSpeechInput.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/composer/useSpeechInput.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/consolePanel.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/consoleShortcuts.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/imageZoom.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/keyboardNav.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/transcriptRows/AssistantRow.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/transcriptRows/ChangesRow.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/transcriptRows/FoldStatusPill.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/transcriptRows/InfoRow.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/transcriptRows/ThoughtRow.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/transcriptRows/ToolGroupRow.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/transcriptRows/UserRow.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/transcriptRows/context.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/transcriptRows/registry.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/transcriptRows/spotlight.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/transcriptRows/useCopyFlag.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/transcriptViewport.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/components/useAttachmentResource.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/consoleInfo.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/domGuard.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/index.css +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/main.tsx +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/markdown/ansi.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/markdown/filePaths.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/markdown/highlight.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/markdown/imageRefs.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/markdown/mermaid.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/markdown/parse.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/markdown/tex.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/runtime-client/artifactLocate.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/runtime-client/artifacts.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/runtime-client/artifactsDiff.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/runtime-client/attachments.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/runtime-client/codexUsage.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/runtime-client/externalApps.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/runtime-client/git.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/runtime-client/gitDiffParser.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/runtime-client/recoverability.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/runtime-client/recoveryDecider.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/runtime-client/screenshot.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/appearance.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/attachCursor.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/backgroundAlerts.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/codexUsage.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/codexUsageView.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/goalView.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/historyAttachments.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/historyMapper.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/liveDeltaBatch.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/liveEventReducer.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/mcpRuntimeView.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/recoveryDecider.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/recoveryNoticeView.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/runtimeConfigMapper.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/runtimeDiagnosticsView.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/screenshotTask.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/sessionList.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/sessionViews.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/todoView.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/transcriptCache.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/transcriptLabels.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/transcriptRowPolicy.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/turnRail.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/turnWork.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/usagePrefs.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/src/stores/usageView.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tailwind.config.js +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/_consoleDebug.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/ansi.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/appearance.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/artifactErrors.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/artifactImages.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/artifactLocate.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/artifactPreviewGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/artifactsDiff.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/artifactsView.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/attachCursor.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/attachmentErrors.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/attachmentTransfer.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/attachmentViewGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/backgroundAlerts.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/backgroundWatchGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/bootstrap.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/bottomBarContract.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/bottomBarDismiss.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/bottomBarInteraction.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/bottomBarLayout.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/bottomBarMore.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/codexUsage.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/codexUsageClient.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/codexUsageEntry.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/composerActions.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/composerActions.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/composerAttachmentGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/composerEditing.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/composerKeyboardGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/composerMentions.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/composerSerialization.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/consoleAuth.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/crossSiteCookie.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/devProxy.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/devProxyRealHost.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/devProxyWsOrigin.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/dialogKeyboardNav.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/domGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/externalApps.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/filePaths.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/fluentAppearance.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/gitDiffParser.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/gitExplorer.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/gitExplorerUntracked.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/goalDialog.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/goalView.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/helpers/cdp.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/helpers/consoleStub.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/helpers/httpProbe.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/helpers/stripAnsi.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/helpers/transcriptSource.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/helpers/wsChannel.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/helpers/wsClient.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/highlight.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/historyAttachments.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/historyMapper.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/imageRefs.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/imageZoom.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/imageZoom.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/imageZoomGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/importExtensionGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/liveDeltaBatch.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/liveEventReducer.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/localSpeechAudio.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/markdownImageGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/markdownParser.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/markdownRenderGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/markdownTableGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/mathBlocks.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/mathRender.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/mcpPanelGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/mcpRuntimeState.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/mcpRuntimeView.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/mermaidPolicy.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/openWithMenu.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/openWithMenuGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/projectThinking.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/pwaManifest.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/reconcileDecider.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/recoveryNotice.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/runtimeClientBoundary.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/runtimeClientClose.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/runtimeClientMultiWatch.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/runtimeClientReconcile.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/runtimeClientRecovery.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/runtimeConfigMapper.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/runtimeConfigReadOnly.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/runtimeContractFixture.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/runtimeStatusUi.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/screenshot.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/sessionBackgroundSwitch.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/sessionDeleteDialog.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/sessionList.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/sessionManagement.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/sessionViews.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/shellLayout.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/shellLayout.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/speechInput.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/speechInputGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/streamingCoalesceGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/streamingDelta.bench.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/sttClient.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/sttEngine.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/themeContract.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/thinkingLevelWrite.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/todoView.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/topBarLayout.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/transcriptChanges.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/transcriptFoldHeaderGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/transcriptFoldSpace.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/transcriptLabels.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/transcriptLayoutGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/transcriptRowContract.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/transcriptScrollGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/transcriptVirtual.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/transcriptVirtualization.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/transcriptWorkedTimerGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/turnChanges.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/turnRail.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/turnRailGuard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/turnRailJump.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/turnRevert.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/turnRevert.verify.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/turnWork.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/usageDashboard.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/usageView.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tests/windowControlsOverlay.test.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tsconfig.app.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tsconfig.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tsconfig.node.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/tsconfig.runtime-client.json +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/web/vite.config.ts +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/.gitignore +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/Directory.Build.props +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/README.md +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/WindowsCapture.sln +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/GameControl.Cli/GameControl.Cli.csproj +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/GameControl.Cli/Program.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/App.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/Capture/ImageCodec.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/Capture/WgcCaptureEngine.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/Capture/Win32.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/Capture/WindowEnumerator.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/CliOptions.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/CliRunner.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/GameControlCli.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/GamepadController.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/HostService.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/MainWindow.xaml +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/MainWindow.xaml.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/PipeClient.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/Program.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/RpcServer.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/SelfTest.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/SettingsWindow.xaml +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/SettingsWindow.xaml.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/UnavailableGamepadController.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.App/WindowsCapture.App.csproj +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.Core/Abstractions.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.Core/CapturePlanner.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.Core/ConfigStore.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.Core/Gamepad.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.Core/JobService.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.Core/Json.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.Core/Model.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.Core/Protocol.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.Core/RequestRegistry.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.Core/RpcDispatcher.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.Core/TargetIdentity.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/src/WindowsCapture.Core/WindowsCapture.Core.csproj +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/tests/WindowsCapture.Tests/CapturePlannerTests.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/tests/WindowsCapture.Tests/ConfigStoreTests.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/tests/WindowsCapture.Tests/Fakes.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/tests/WindowsCapture.Tests/JobServiceLifetimeTests.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/tests/WindowsCapture.Tests/JobServiceTests.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/tests/WindowsCapture.Tests/ProtocolTests.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/tests/WindowsCapture.Tests/RpcDispatcherTests.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/tests/WindowsCapture.Tests/TargetIdentityTests.cs +0 -0
- {synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/windows-capture/tests/WindowsCapture.Tests/WindowsCapture.Tests.csproj +0 -0
|
@@ -6,6 +6,43 @@ Each release section starts with `## v{version}` and ends before the next `## `
|
|
|
6
6
|
The release workflow automatically extracts the matching section as release notes.
|
|
7
7
|
All entries are written in English.
|
|
8
8
|
|
|
9
|
+
## v0.1.53
|
|
10
|
+
|
|
11
|
+
### New Features
|
|
12
|
+
|
|
13
|
+
- **Workspace Resume**: Restore the last selected project in the desktop console when it remains available to the runtime.
|
|
14
|
+
|
|
15
|
+
### Bug Fixes
|
|
16
|
+
|
|
17
|
+
- **Desktop Startup Workspace**: Prevent the packaged sidecar's `binaries` directory, including previously registered installations, from becoming the default project.
|
|
18
|
+
- **Codex Usage Refresh**: Read usage and reset credits concurrently while keeping credit redemption exclusive and idempotent.
|
|
19
|
+
|
|
20
|
+
### Engineering
|
|
21
|
+
|
|
22
|
+
- **Safe Codex Diagnostics**: Persist bounded daemon-side error categories and HTTP status codes in a rotating private log without exposing upstream response text or credentials to the console.
|
|
23
|
+
- Added regression tests for workspace fallback, Codex read concurrency, and redacted error logs.
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## v0.1.52
|
|
28
|
+
|
|
29
|
+
### New Features
|
|
30
|
+
|
|
31
|
+
- **Model Maintenance Section in Settings**: Added comprehensive model endpoint CRUD interface in the Web Console settings surface with provider grouping, proxy/WebSocket/streaming visibility, and diff-merge overwrite protection.
|
|
32
|
+
- **MCP Maintenance Section in Settings**: Added dedicated MCP maintenance tab with granular per-server start/stop toggling, individual tool method whitelist selection/filtering, and full CRUD operations (add, edit, delete, reconnect).
|
|
33
|
+
|
|
34
|
+
### Bug Fixes
|
|
35
|
+
|
|
36
|
+
- **Accurate MCP Status Transition Text**: Resolved misleading transition state text by displaying "停止中…" instead of "启动中…" when stopping an MCP server, and strictly isolated per-server state transitions from unaffected servers.
|
|
37
|
+
- **Incremental MCP Session Pool Reuse**: Ensured healthy existing connections are preserved and reused during MCP session rebinding without causing mass reconnections.
|
|
38
|
+
- **Safe MCP Server Fallback**: Guarded list and management RPC endpoints against inactive sessions so the maintenance UI remains functional before any chat thread is opened.
|
|
39
|
+
|
|
40
|
+
### Engineering
|
|
41
|
+
|
|
42
|
+
- Added comprehensive unit tests and TypeScript contract guards covering MCP and Model maintenance RPCs (`runtime.mcp.*`, `runtime.models.*`).
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
9
46
|
## v0.1.51
|
|
10
47
|
|
|
11
48
|
### New Features
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: synapse-cli-agent
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.53
|
|
4
4
|
Summary: Local coding agent built on LangChain Deep Agents (LocalShell, no sandbox)
|
|
5
5
|
Project-URL: Homepage, https://github.com/alex8224/synapse-agent
|
|
6
6
|
Project-URL: Repository, https://github.com/alex8224/synapse-agent
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
## v0.1.53
|
|
2
|
+
|
|
3
|
+
### New Features
|
|
4
|
+
|
|
5
|
+
- **Workspace Resume**: Restore the last selected project in the desktop console when it remains available to the runtime.
|
|
6
|
+
|
|
7
|
+
### Bug Fixes
|
|
8
|
+
|
|
9
|
+
- **Desktop Startup Workspace**: Prevent the packaged sidecar's `binaries` directory, including previously registered installations, from becoming the default project.
|
|
10
|
+
- **Codex Usage Refresh**: Read usage and reset credits concurrently while keeping credit redemption exclusive and idempotent.
|
|
11
|
+
|
|
12
|
+
### Engineering
|
|
13
|
+
|
|
14
|
+
- **Safe Codex Diagnostics**: Persist bounded daemon-side error categories and HTTP status codes in a rotating private log without exposing upstream response text or credentials to the console.
|
|
15
|
+
- Added regression tests for workspace fallback, Codex read concurrency, and redacted error logs.
|
|
16
|
+
|
|
17
|
+
---
|
{synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/integrations/mcp_client.py
RENAMED
|
@@ -707,6 +707,34 @@ class McpSessionPool:
|
|
|
707
707
|
|
|
708
708
|
async def _open_one(self, server: McpServerConfig) -> tuple[_LiveServer | None, str | None]:
|
|
709
709
|
if not server.enabled:
|
|
710
|
+
old = self._servers.pop(server.name, None)
|
|
711
|
+
if old is not None:
|
|
712
|
+
try:
|
|
713
|
+
await old.session_cm.__aexit__(None, None, None)
|
|
714
|
+
except Exception:
|
|
715
|
+
pass
|
|
716
|
+
try:
|
|
717
|
+
await old.transport_cm.__aexit__(None, None, None)
|
|
718
|
+
except Exception:
|
|
719
|
+
pass
|
|
720
|
+
if old.errlog is not None:
|
|
721
|
+
old.errlog.close()
|
|
722
|
+
return None, None
|
|
723
|
+
|
|
724
|
+
existing = self._servers.get(server.name)
|
|
725
|
+
if (
|
|
726
|
+
existing is not None
|
|
727
|
+
and getattr(existing, "session", None) is not None
|
|
728
|
+
and existing.config.transport == server.transport
|
|
729
|
+
and existing.config.command == server.command
|
|
730
|
+
and existing.config.args == server.args
|
|
731
|
+
and existing.config.env == server.env
|
|
732
|
+
and existing.config.url == server.url
|
|
733
|
+
and existing.config.headers == server.headers
|
|
734
|
+
):
|
|
735
|
+
existing.config = server
|
|
736
|
+
return existing, None
|
|
737
|
+
|
|
710
738
|
return None, None
|
|
711
739
|
timeout_sec = server.timeout if server.timeout > 0 else 12.0
|
|
712
740
|
try:
|
|
@@ -857,6 +885,22 @@ class McpSessionPool:
|
|
|
857
885
|
*[_load_one(s) for s in servers], return_exceptions=True
|
|
858
886
|
)
|
|
859
887
|
|
|
888
|
+
configured_names = {s.name for s in servers}
|
|
889
|
+
for name in list(self._servers.keys()):
|
|
890
|
+
if name not in configured_names:
|
|
891
|
+
old = self._servers.pop(name, None)
|
|
892
|
+
if old is not None:
|
|
893
|
+
try:
|
|
894
|
+
await old.session_cm.__aexit__(None, None, None)
|
|
895
|
+
except Exception:
|
|
896
|
+
pass
|
|
897
|
+
try:
|
|
898
|
+
await old.transport_cm.__aexit__(None, None, None)
|
|
899
|
+
except Exception:
|
|
900
|
+
pass
|
|
901
|
+
if old.errlog is not None:
|
|
902
|
+
old.errlog.close()
|
|
903
|
+
|
|
860
904
|
tools: list[Any] = []
|
|
861
905
|
warnings: list[str] = []
|
|
862
906
|
ok_servers: list[str] = []
|
|
@@ -29,7 +29,7 @@ from synapse.models.registry import _profiles_from_mapping, resolve_models_confi
|
|
|
29
29
|
from synapse.settings.config_paths import MODELS_FILENAME, project_config_dir
|
|
30
30
|
|
|
31
31
|
# Alias appears in /model reload commands; keep it a single safe token.
|
|
32
|
-
_VALID_ALIAS = re.compile(r"^[
|
|
32
|
+
_VALID_ALIAS = re.compile(r"^[\w.:\-\u4e00-\u9fa5]+$")
|
|
33
33
|
|
|
34
34
|
|
|
35
35
|
class ModelsStoreError(ValueError):
|
|
@@ -43,6 +43,7 @@ _PROFILE_FIELDS = (
|
|
|
43
43
|
"api_key_env",
|
|
44
44
|
"auth",
|
|
45
45
|
"base_url",
|
|
46
|
+
"provider",
|
|
46
47
|
"headers",
|
|
47
48
|
"context_window",
|
|
48
49
|
"enable_thinking",
|
|
@@ -54,6 +55,8 @@ _PROFILE_FIELDS = (
|
|
|
54
55
|
"extra",
|
|
55
56
|
"model_kwargs",
|
|
56
57
|
"extra_body",
|
|
58
|
+
"openai_proxy",
|
|
59
|
+
"streaming",
|
|
57
60
|
)
|
|
58
61
|
|
|
59
62
|
|
|
@@ -158,6 +158,9 @@ class ModelRegistry:
|
|
|
158
158
|
def list_names(self) -> list[str]:
|
|
159
159
|
return sorted(self.profiles)
|
|
160
160
|
|
|
161
|
+
def list_profiles(self) -> list[ModelProfile]:
|
|
162
|
+
return list(self.profiles.values())
|
|
163
|
+
|
|
161
164
|
def get(self, name: str | None = None) -> ModelProfile:
|
|
162
165
|
key = (name or self.default or "").strip()
|
|
163
166
|
if not key:
|
|
@@ -224,6 +227,8 @@ class ModelRegistry:
|
|
|
224
227
|
profile = self.get(name)
|
|
225
228
|
kwargs: dict[str, Any] = dict(profile.extra or {})
|
|
226
229
|
model_name = profile.model
|
|
230
|
+
if ":" not in model_name and profile.provider:
|
|
231
|
+
model_name = f"{profile.provider}:{model_name}"
|
|
227
232
|
configured_headers = _merge_headers(self.headers, profile.headers)
|
|
228
233
|
|
|
229
234
|
api_key = profile.resolved_api_key() or fallback_api_key
|
|
@@ -965,7 +970,7 @@ def registry_from_settings(settings: Any) -> ModelRegistry:
|
|
|
965
970
|
if reg is not None:
|
|
966
971
|
selected = (getattr(settings, "active_model", None) or "").strip()
|
|
967
972
|
if not selected:
|
|
968
|
-
candidate = (settings
|
|
973
|
+
candidate = (getattr(settings, "model", None) or "").strip()
|
|
969
974
|
if candidate in reg.profiles:
|
|
970
975
|
selected = candidate
|
|
971
976
|
if selected:
|
{synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/daemon/application.py
RENAMED
|
@@ -160,26 +160,29 @@ def apply_mcp_rebinding(
|
|
|
160
160
|
workspace=descriptor.workspace,
|
|
161
161
|
explicit_path=project_settings.mcp_config_path,
|
|
162
162
|
)
|
|
163
|
-
registry.release(pool_key)
|
|
164
163
|
settings = load_project_settings(descriptor.workspace)
|
|
165
164
|
active_model = binding.settings.active_model or binding.settings.model
|
|
166
165
|
profile = registry_from_settings(settings).get(active_model)
|
|
167
166
|
apply_profile_to_settings(settings, profile, seed_thinking=False)
|
|
167
|
+
from synapse.integrations.mcp_client import load_mcp_server_configs
|
|
168
|
+
|
|
169
|
+
server_configs = load_mcp_server_configs(
|
|
170
|
+
path=settings.mcp_config_path,
|
|
171
|
+
json_blob=settings.mcp_servers_json,
|
|
172
|
+
workspace=descriptor.workspace,
|
|
173
|
+
)
|
|
168
174
|
live = registry.get(pool_key)
|
|
169
|
-
if live is not None
|
|
175
|
+
if live is not None:
|
|
176
|
+
load_result = live.load(server_configs)
|
|
170
177
|
agent = build_coding_agent(
|
|
171
178
|
settings,
|
|
172
179
|
project_root=descriptor.workspace,
|
|
173
|
-
mcp_tools=list(
|
|
180
|
+
mcp_tools=list(load_result.tools),
|
|
174
181
|
load_mcp=False,
|
|
175
182
|
prompt_cache_key=lambda: thread_id,
|
|
176
183
|
mcp_pool_key=pool_key,
|
|
177
184
|
)
|
|
178
185
|
else:
|
|
179
|
-
if live is not None:
|
|
180
|
-
# An empty pool would be reused by key: drop it so the rebuild
|
|
181
|
-
# reconnects instead of attaching nothing.
|
|
182
|
-
registry.release(pool_key)
|
|
183
186
|
agent = build_coding_agent(
|
|
184
187
|
settings,
|
|
185
188
|
project_root=descriptor.workspace,
|
{synapse_cli_agent-0.1.51 → synapse_cli_agent-0.1.53}/src/synapse/runtime/daemon/codex_usage.py
RENAMED
|
@@ -156,11 +156,11 @@ class CodexUsageAdapter:
|
|
|
156
156
|
"""Real :class:`CodexUsageProvider` implementation for the daemon."""
|
|
157
157
|
|
|
158
158
|
def __init__(self) -> None:
|
|
159
|
-
#
|
|
160
|
-
#
|
|
161
|
-
# snapshot that predates a redemption. All ledger state is mutated
|
|
162
|
-
# under this lock, on the worker thread, never on the event loop.
|
|
159
|
+
# Writes remain exclusive, while independent GETs may run together.
|
|
160
|
+
# A writer waits for in-flight reads before checking/redeeming a credit.
|
|
163
161
|
self._lock = threading.RLock()
|
|
162
|
+
self._reads_done = threading.Condition(self._lock)
|
|
163
|
+
self._active_reads = 0
|
|
164
164
|
self._client: CodexUsageClient | None = None
|
|
165
165
|
#: command_id -> (fingerprint, settled result); bounded replay ledger.
|
|
166
166
|
self._commands: OrderedDict[str, tuple[tuple[str, ...], CodexConsumeResult]] = OrderedDict()
|
|
@@ -217,11 +217,25 @@ class CodexUsageAdapter:
|
|
|
217
217
|
|
|
218
218
|
def _fetch_usage(self, force: bool) -> CodexUsageSnapshot:
|
|
219
219
|
with self._lock:
|
|
220
|
-
|
|
220
|
+
client = self._codex_client()
|
|
221
|
+
self._active_reads += 1
|
|
222
|
+
try:
|
|
223
|
+
return client.fetch(force=force)
|
|
224
|
+
finally:
|
|
225
|
+
with self._lock:
|
|
226
|
+
self._active_reads -= 1
|
|
227
|
+
self._reads_done.notify_all()
|
|
221
228
|
|
|
222
229
|
def _fetch_credits(self, force: bool) -> ResetCredits:
|
|
223
230
|
with self._lock:
|
|
224
|
-
|
|
231
|
+
client = self._codex_client()
|
|
232
|
+
self._active_reads += 1
|
|
233
|
+
try:
|
|
234
|
+
return client.fetch_reset_credits(force=force)
|
|
235
|
+
finally:
|
|
236
|
+
with self._lock:
|
|
237
|
+
self._active_reads -= 1
|
|
238
|
+
self._reads_done.notify_all()
|
|
225
239
|
|
|
226
240
|
# -- consume / idempotency ---------------------------------------------
|
|
227
241
|
|
|
@@ -229,6 +243,8 @@ class CodexUsageAdapter:
|
|
|
229
243
|
self, command: ConsumeCodexResetCommand, model: str
|
|
230
244
|
) -> CodexConsumeResult:
|
|
231
245
|
with self._lock:
|
|
246
|
+
while self._active_reads:
|
|
247
|
+
self._reads_done.wait()
|
|
232
248
|
client = self._codex_client()
|
|
233
249
|
account = client.account_key() or "unknown-account"
|
|
234
250
|
fingerprint = (
|
|
@@ -4,11 +4,33 @@ from __future__ import annotations
|
|
|
4
4
|
|
|
5
5
|
import argparse
|
|
6
6
|
import asyncio
|
|
7
|
+
import logging
|
|
8
|
+
import os
|
|
7
9
|
import sys
|
|
10
|
+
from logging.handlers import RotatingFileHandler
|
|
8
11
|
from pathlib import Path
|
|
9
12
|
|
|
10
13
|
from synapse.runtime.daemon.application import run_daemon
|
|
11
|
-
from synapse.runtime.daemon.config import DaemonConfig
|
|
14
|
+
from synapse.runtime.daemon.config import DaemonConfig, ensure_directory
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
def _configure_error_log(state_dir: Path) -> RotatingFileHandler:
|
|
18
|
+
"""Persist bounded daemon errors even when launched without a console."""
|
|
19
|
+
ensure_directory(state_dir)
|
|
20
|
+
log_path = state_dir / "errors.log"
|
|
21
|
+
if log_path.is_symlink():
|
|
22
|
+
raise ValueError("daemon error log must not be a symlink")
|
|
23
|
+
handler = RotatingFileHandler(
|
|
24
|
+
log_path, maxBytes=1_000_000, backupCount=2, encoding="utf-8"
|
|
25
|
+
)
|
|
26
|
+
if os.name != "nt":
|
|
27
|
+
log_path.chmod(0o600)
|
|
28
|
+
handler.setLevel(logging.ERROR)
|
|
29
|
+
handler.setFormatter(logging.Formatter("%(asctime)s %(levelname)s %(name)s %(message)s"))
|
|
30
|
+
logger = logging.getLogger("synapse.runtime.codex_usage")
|
|
31
|
+
logger.addHandler(handler)
|
|
32
|
+
logger.propagate = False
|
|
33
|
+
return handler
|
|
12
34
|
|
|
13
35
|
|
|
14
36
|
def build_parser() -> argparse.ArgumentParser:
|
|
@@ -21,6 +43,7 @@ def build_parser() -> argparse.ArgumentParser:
|
|
|
21
43
|
|
|
22
44
|
|
|
23
45
|
def main(argv: list[str] | None = None) -> int:
|
|
46
|
+
handler: RotatingFileHandler | None = None
|
|
24
47
|
try:
|
|
25
48
|
args = build_parser().parse_args(argv)
|
|
26
49
|
config = DaemonConfig(
|
|
@@ -29,6 +52,7 @@ def main(argv: list[str] | None = None) -> int:
|
|
|
29
52
|
state_dir=args.state_dir or DaemonConfig().state_dir,
|
|
30
53
|
token_file=args.token_file,
|
|
31
54
|
)
|
|
55
|
+
handler = _configure_error_log(config.state_dir)
|
|
32
56
|
asyncio.run(run_daemon(config, stdout=sys.stdout))
|
|
33
57
|
return 0
|
|
34
58
|
except asyncio.CancelledError:
|
|
@@ -39,6 +63,10 @@ def main(argv: list[str] | None = None) -> int:
|
|
|
39
63
|
return 2
|
|
40
64
|
except KeyboardInterrupt:
|
|
41
65
|
return 0
|
|
66
|
+
finally:
|
|
67
|
+
if handler is not None:
|
|
68
|
+
logging.getLogger("synapse.runtime.codex_usage").removeHandler(handler)
|
|
69
|
+
handler.close()
|
|
42
70
|
|
|
43
71
|
|
|
44
72
|
if __name__ == "__main__":
|
|
@@ -101,6 +101,21 @@ from synapse.runtime.service.history import (
|
|
|
101
101
|
SessionHistoryPage,
|
|
102
102
|
SessionListPage,
|
|
103
103
|
)
|
|
104
|
+
from synapse.runtime.service.mcp_management import (
|
|
105
|
+
DeleteMcpServerCommand,
|
|
106
|
+
ListMcpServersQuery,
|
|
107
|
+
McpServerListResult,
|
|
108
|
+
SaveMcpServerCommand,
|
|
109
|
+
)
|
|
110
|
+
from synapse.runtime.service.model_management import (
|
|
111
|
+
DeleteModelCommand,
|
|
112
|
+
ListModelsQuery,
|
|
113
|
+
ModelListResult,
|
|
114
|
+
SaveModelCommand,
|
|
115
|
+
SetDefaultModelCommand,
|
|
116
|
+
TestModelCommand,
|
|
117
|
+
TestModelResult,
|
|
118
|
+
)
|
|
104
119
|
from synapse.runtime.service.ports import AgentRuntimeService, EventWatch
|
|
105
120
|
from synapse.runtime.service.project_list import (
|
|
106
121
|
ListProjectsQuery,
|
|
@@ -184,6 +199,10 @@ __all__ = [
|
|
|
184
199
|
"APPS_LIST",
|
|
185
200
|
"SCREENSHOT_READ",
|
|
186
201
|
"SCREENSHOT_CONTROL",
|
|
202
|
+
"MODELS_READ",
|
|
203
|
+
"MODELS_WRITE",
|
|
204
|
+
"MCP_READ",
|
|
205
|
+
"MCP_WRITE",
|
|
187
206
|
"STT_CONTROL",
|
|
188
207
|
"WORKSPACE_REVERT",
|
|
189
208
|
"WORKSPACE_OPEN_EXTERNAL",
|
|
@@ -309,6 +328,10 @@ SCREENSHOT_CONTROL = "screenshot.control"
|
|
|
309
328
|
#: its own grant -- ``session.read`` and ``attachments.write`` must never
|
|
310
329
|
#: authorize it.
|
|
311
330
|
STT_CONTROL = "stt.control"
|
|
331
|
+
MODELS_READ = "models.read"
|
|
332
|
+
MODELS_WRITE = "models.write"
|
|
333
|
+
MCP_READ = "mcp.read"
|
|
334
|
+
MCP_WRITE = "mcp.write"
|
|
312
335
|
|
|
313
336
|
ALL_RUNTIME_CAPABILITIES = frozenset(
|
|
314
337
|
{
|
|
@@ -351,6 +374,10 @@ ALL_RUNTIME_CAPABILITIES = frozenset(
|
|
|
351
374
|
SCREENSHOT_READ,
|
|
352
375
|
SCREENSHOT_CONTROL,
|
|
353
376
|
STT_CONTROL,
|
|
377
|
+
MODELS_READ,
|
|
378
|
+
MODELS_WRITE,
|
|
379
|
+
MCP_READ,
|
|
380
|
+
MCP_WRITE,
|
|
354
381
|
}
|
|
355
382
|
)
|
|
356
383
|
|
|
@@ -1568,6 +1595,78 @@ class AccessControlledAgentRuntimeService:
|
|
|
1568
1595
|
raise InvalidRequestError("session recovery is unavailable")
|
|
1569
1596
|
return await delegate(query)
|
|
1570
1597
|
|
|
1598
|
+
async def list_models(self, query: ListModelsQuery) -> ModelListResult:
|
|
1599
|
+
session = self._session_from_dto(query, ListModelsQuery, "list models query")
|
|
1600
|
+
self._authorize(session, MODELS_READ)
|
|
1601
|
+
delegate = getattr(self._delegate, "list_models", None)
|
|
1602
|
+
if not callable(delegate):
|
|
1603
|
+
raise InvalidRequestError("model management is unavailable")
|
|
1604
|
+
return await delegate(query)
|
|
1605
|
+
|
|
1606
|
+
async def save_model(self, command: SaveModelCommand) -> ModelListResult:
|
|
1607
|
+
session = self._session_from_dto(command, SaveModelCommand, "save model command")
|
|
1608
|
+
self._authorize(session, MODELS_WRITE)
|
|
1609
|
+
delegate = getattr(self._delegate, "save_model", None)
|
|
1610
|
+
if not callable(delegate):
|
|
1611
|
+
raise InvalidRequestError("model management is unavailable")
|
|
1612
|
+
return await delegate(command)
|
|
1613
|
+
|
|
1614
|
+
async def delete_model(self, command: DeleteModelCommand) -> ModelListResult:
|
|
1615
|
+
session = self._session_from_dto(command, DeleteModelCommand, "delete model command")
|
|
1616
|
+
self._authorize(session, MODELS_WRITE)
|
|
1617
|
+
delegate = getattr(self._delegate, "delete_model", None)
|
|
1618
|
+
if not callable(delegate):
|
|
1619
|
+
raise InvalidRequestError("model management is unavailable")
|
|
1620
|
+
return await delegate(command)
|
|
1621
|
+
|
|
1622
|
+
async def set_default_model(self, command: SetDefaultModelCommand) -> ModelListResult:
|
|
1623
|
+
session = self._session_from_dto(
|
|
1624
|
+
command, SetDefaultModelCommand, "set default model command"
|
|
1625
|
+
)
|
|
1626
|
+
self._authorize(session, MODELS_WRITE)
|
|
1627
|
+
delegate = getattr(self._delegate, "set_default_model", None)
|
|
1628
|
+
if not callable(delegate):
|
|
1629
|
+
raise InvalidRequestError("model management is unavailable")
|
|
1630
|
+
return await delegate(command)
|
|
1631
|
+
|
|
1632
|
+
async def test_model(self, command: TestModelCommand) -> TestModelResult:
|
|
1633
|
+
session = self._session_from_dto(command, TestModelCommand, "test model command")
|
|
1634
|
+
self._authorize(session, MODELS_READ)
|
|
1635
|
+
delegate = getattr(self._delegate, "test_model", None)
|
|
1636
|
+
if not callable(delegate):
|
|
1637
|
+
raise InvalidRequestError("model management is unavailable")
|
|
1638
|
+
return await delegate(command)
|
|
1639
|
+
|
|
1640
|
+
async def list_mcp_servers(self, query: ListMcpServersQuery) -> McpServerListResult:
|
|
1641
|
+
session = self._session_from_dto(
|
|
1642
|
+
query, ListMcpServersQuery, "list MCP servers query"
|
|
1643
|
+
)
|
|
1644
|
+
self._authorize(session, MCP_READ)
|
|
1645
|
+
delegate = getattr(self._delegate, "list_mcp_servers", None)
|
|
1646
|
+
if not callable(delegate):
|
|
1647
|
+
raise InvalidRequestError("MCP management is unavailable")
|
|
1648
|
+
return await delegate(query)
|
|
1649
|
+
|
|
1650
|
+
async def save_mcp_server(self, command: SaveMcpServerCommand) -> McpServerListResult:
|
|
1651
|
+
session = self._session_from_dto(
|
|
1652
|
+
command, SaveMcpServerCommand, "save MCP server command"
|
|
1653
|
+
)
|
|
1654
|
+
self._authorize(session, MCP_WRITE)
|
|
1655
|
+
delegate = getattr(self._delegate, "save_mcp_server", None)
|
|
1656
|
+
if not callable(delegate):
|
|
1657
|
+
raise InvalidRequestError("MCP management is unavailable")
|
|
1658
|
+
return await delegate(command)
|
|
1659
|
+
|
|
1660
|
+
async def delete_mcp_server(self, command: DeleteMcpServerCommand) -> McpServerListResult:
|
|
1661
|
+
session = self._session_from_dto(
|
|
1662
|
+
command, DeleteMcpServerCommand, "delete MCP server command"
|
|
1663
|
+
)
|
|
1664
|
+
self._authorize(session, MCP_WRITE)
|
|
1665
|
+
delegate = getattr(self._delegate, "delete_mcp_server", None)
|
|
1666
|
+
if not callable(delegate):
|
|
1667
|
+
raise InvalidRequestError("MCP management is unavailable")
|
|
1668
|
+
return await delegate(command)
|
|
1669
|
+
|
|
1571
1670
|
def watch_events(
|
|
1572
1671
|
self,
|
|
1573
1672
|
session: SessionRef,
|