soothe-plugins 0.2.6__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,156 @@
1
+ Metadata-Version: 2.4
2
+ Name: soothe-plugins
3
+ Version: 0.2.6
4
+ Summary: Community plugins for Soothe agent orchestration framework
5
+ Project-URL: Homepage, https://github.com/mirasoth/soothe-plugins
6
+ Project-URL: Repository, https://github.com/mirasoth/soothe-plugins
7
+ Project-URL: Issues, https://github.com/mirasoth/soothe-plugins/issues
8
+ License: MIT
9
+ Keywords: agents,ai,llm,plugins,soothe
10
+ Classifier: Development Status :: 3 - Alpha
11
+ Classifier: Intended Audience :: Developers
12
+ Classifier: License :: OSI Approved :: MIT License
13
+ Classifier: Programming Language :: Python :: 3
14
+ Classifier: Programming Language :: Python :: 3.11
15
+ Classifier: Programming Language :: Python :: 3.12
16
+ Classifier: Programming Language :: Python :: 3.13
17
+ Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
18
+ Requires-Python: <3.15,>=3.11
19
+ Requires-Dist: arxiv<3.0.0,>=2.0.0
20
+ Requires-Dist: feedparser<7.0.0,>=6.0.0
21
+ Requires-Dist: langgraph<2.0.0,>=1.1.1
22
+ Requires-Dist: numpy<3.0.0,>=1.20.0
23
+ Requires-Dist: pyzotero<2.0.0,>=1.5.0
24
+ Requires-Dist: scikit-learn<2.0.0,>=1.0.0
25
+ Requires-Dist: sentence-transformers<6.0.0,>=2.2.0
26
+ Requires-Dist: soothe-sdk<1.0.0,>=0.5.9
27
+ Requires-Dist: tiktoken<1.0.0,>=0.5.0
28
+ Provides-Extra: dev
29
+ Requires-Dist: build>=1.0.0; extra == 'dev'
30
+ Requires-Dist: pytest-asyncio>=1.3.0; extra == 'dev'
31
+ Requires-Dist: pytest-cov; extra == 'dev'
32
+ Requires-Dist: pytest>=8.0.0; extra == 'dev'
33
+ Requires-Dist: ruff>=0.12.0; extra == 'dev'
34
+ Requires-Dist: twine>=5.0.0; extra == 'dev'
35
+ Description-Content-Type: text/markdown
36
+
37
+ # Soothe Community Plugins
38
+
39
+ Standalone community plugins package for the Soothe agent orchestration framework.
40
+
41
+ ## Installation
42
+
43
+ ```bash
44
+ pip install soothe-plugins
45
+ ```
46
+
47
+ ## Available Plugins
48
+
49
+ ### Sample Echo
50
+
51
+ Minimal echo subagent for testing soothe-plugins integration. See [CONTRIBUTING.md](CONTRIBUTING.md) for plugin development guide.
52
+
53
+ ### Skillify
54
+
55
+ Skill warehouse indexing and semantic retrieval agent. Provides background indexing loop and retrieval capabilities for skill discovery.
56
+
57
+ ### Weaver
58
+
59
+ Generative agent framework with skill harmonization. Composes skills from Skillify, resolves conflicts, and generates task-specific subagents dynamically.
60
+
61
+ ### BrowserUse and Claude Code
62
+
63
+ Delegated **browser-use** and **Claude agent SDK** subagents (IG-415). Install with `pip install "soothe-plugins[browser_use]"` or `"soothe-plugins[claude]"` and enable `subagents.browser_use` / `subagents.claude` in config. Spec: `docs/RFC-601-community-agents.md`.
64
+
65
+ ## Extensibility
66
+
67
+ This package is designed for extensibility. You can easily add new community plugins:
68
+
69
+ ### Available Plugin Types
70
+
71
+ 1. **Subagent Plugins**: Complex multi-step agents using langgraph
72
+ 2. **Tool Plugins**: Simple functions exposed as tools
73
+ 3. **Hybrid Plugins**: Both subagents and tools
74
+
75
+ ### Future Plugins
76
+
77
+ The package structure supports adding new plugins:
78
+
79
+ ```
80
+ src/soothe_plugins/
81
+ ├── sample_echo/ # Minimal test subagent (example plugin)
82
+ ├── paperscout/ # ArXiv paper recommendations
83
+ ├── [your_plugin]/ # Your future plugin
84
+ └── [another_plugin]/ # Another future plugin
85
+ ```
86
+
87
+ See [CONTRIBUTING.md](CONTRIBUTING.md) for detailed guidelines on adding new plugins.
88
+
89
+ ### Plugin Template
90
+
91
+ Use the provided template to create new plugins:
92
+
93
+ ```bash
94
+ cp -r src/soothe_plugins/.plugin_template src/soothe_plugins/your_plugin
95
+ ```
96
+
97
+ ## Development
98
+
99
+ ### Setup
100
+
101
+ ```bash
102
+ # Clone the repository
103
+ git clone https://github.com/mirasoth/soothe-plugins.git
104
+ cd soothe-plugins
105
+
106
+ # Install in development mode
107
+ pip install -e ".[dev]"
108
+ ```
109
+
110
+ ### Testing
111
+
112
+ ```bash
113
+ # Run all tests
114
+ pytest tests/
115
+
116
+ # Run specific plugin tests
117
+ pytest tests/test_paperscout/
118
+
119
+ # With coverage
120
+ pytest tests/ --cov=src/soothe_plugins
121
+ ```
122
+
123
+ ### Code Quality
124
+
125
+ ```bash
126
+ # Format code
127
+ ruff format src/ tests/
128
+
129
+ # Lint code
130
+ ruff check --fix src/ tests/
131
+ ```
132
+
133
+ ## Documentation
134
+
135
+ - **README.md**: This file - overview and quick start
136
+ - **CONTRIBUTING.md**: How to add new plugins
137
+ - **docs/RFC-601-community-agents.md**: Architecture RFC for community agents
138
+ - **src/soothe_plugins/.plugin_template/**: Template for new plugins
139
+
140
+ ## Architecture
141
+
142
+ Each plugin follows the RFC-0018 plugin system:
143
+
144
+ ```
145
+ Plugin Package
146
+ ├── __init__.py # @plugin, @subagent, @tool decorators
147
+ ├── events.py # Custom events (optional)
148
+ ├── models.py # Data models
149
+ ├── state.py # Agent state (if subagent)
150
+ ├── implementation.py # Core logic
151
+ └── README.md # Plugin documentation
152
+ ```
153
+
154
+ ## License
155
+
156
+ MIT
@@ -0,0 +1,30 @@
1
+ soothe_plugins/README.md,sha256=_Zxkk8M7Cqe5vD60Z0T-4OXvIS4sydSLdZhzpeaRplY,4312
2
+ soothe_plugins/__init__.py,sha256=4_-Sz-iC7PxbNfG3cjgNgC62yhzFn48QxpikgN5sFV8,530
3
+ soothe_plugins/_paths.py,sha256=mO5hoASEcieUlPS5EnNA_2HSo22qU8SVWPl59HBHQFw,431
4
+ soothe_plugins/.plugin_template/PLUGIN_TEMPLATE.md,sha256=c0MK31gFaNpTP_V9WD1gquX5VbVvzMa1O7JM-6RVybM,1177
5
+ soothe_plugins/.plugin_template/README.md.template,sha256=BfnETFlVGZhD3rrOG-iAk4OR1Hpwy-lHfasAHadaZX0,2512
6
+ soothe_plugins/.plugin_template/__init__.py.template,sha256=NU9eL7kOOxj4oT5UthU0QrzKW7-kwSSzMSDso8ex2m0,4637
7
+ soothe_plugins/.plugin_template/events.py.template,sha256=ZYfw01sM-__lO-9JSRs4H0KZyvAKP5lAok9XKRODc3w,819
8
+ soothe_plugins/.plugin_template/implementation.py.template,sha256=fvEEnnDOpoxrfBVkmnT_Os2I2gyVZwUY40W_NpzrHng,2465
9
+ soothe_plugins/.plugin_template/models.py.template,sha256=YJzyxWzJ2kphx3R8YP-swDKs4ccQ_IfX_F1gbOPOYx8,870
10
+ soothe_plugins/.plugin_template/state.py.template,sha256=RK52DrLuqdvHJ-kvh-NyveKthkxnE9zat1RvJ7JGQNY,1286
11
+ soothe_plugins/sample_echo/__init__.py,sha256=B8shMGwfyvVC_BJJud9GRQ5qZUVmhkargx_Uqv3M3Wg,1300
12
+ soothe_plugins/sample_echo/implementation.py,sha256=3QX4AYafW3Dkr-MNty_s7kDvl8rLDAzClAUMkoSsqt4,1461
13
+ soothe_plugins/skillify/__init__.py,sha256=GwW1u-XFiJWU8LydKxLziDfVY6PV3H0jE0YmEBFcew4,10391
14
+ soothe_plugins/skillify/events.py,sha256=cgbQelACusfoLjQpvXVjN53k2xveymAeX2iUeHys1lQ,4798
15
+ soothe_plugins/skillify/indexer.py,sha256=LPfeoQLmKrSsFYGD26ledAaTQ1qTdw2S7jtkJnumK8M,11403
16
+ soothe_plugins/skillify/models.py,sha256=KtXPC0mv_xhH8aVzZvcC31gn34RQpNEILQX46GjEF0s,856
17
+ soothe_plugins/skillify/retriever.py,sha256=bJ2IBH2TQoHGzeJyUgIrE9shZnbcpJ3uw1AKOvtKkN4,5616
18
+ soothe_plugins/skillify/warehouse.py,sha256=7dU5S3TGIE3S86xrKRCP8RoQ2go1QPLeqKSg7nnSwL0,3165
19
+ soothe_plugins/weaver/__init__.py,sha256=OF8947t-F0IcmRcc6PFTdi_BLXRKQlRo_McDAeLBaQI,19386
20
+ soothe_plugins/weaver/analyzer.py,sha256=8-z-uVNXlzfOVe3KgqZFxG5pV2YRRENWVwuOY4CHu3g,2547
21
+ soothe_plugins/weaver/composer.py,sha256=GEpBya4E_D8M-yq2XiVnYQqiUgDaJRE8zkaKAr_C-j0,11215
22
+ soothe_plugins/weaver/events.py,sha256=9BYPVk7prXLie0OgnD5U6tBZ-KfncifE7pbvru-Z7Vs,7362
23
+ soothe_plugins/weaver/generator.py,sha256=XYdrcz5SMMQSxeQan7J9EsRwVCMVG6rg6RvGxq41K2A,6405
24
+ soothe_plugins/weaver/models.py,sha256=dj4sZMzWuRTMf-RX3oHX4K0zAQ_1H1kJSfBwTsg-w70,4606
25
+ soothe_plugins/weaver/registry.py,sha256=i7AgL1Y2PenPZhGFopJDvUfJFQboDR2LCJi5nbnPiuI,7394
26
+ soothe_plugins/weaver/reuse.py,sha256=4OKXA6bEvfiTc1IL32uDSs1S9AXewydwrZVOdQfMjmA,4963
27
+ soothe_plugins-0.2.6.dist-info/METADATA,sha256=12YIHnk8w_pvdwe1zuzsRHshNqusrKRGH3fzGqyeHd0,4538
28
+ soothe_plugins-0.2.6.dist-info/WHEEL,sha256=mffPy8wBnZQn2VnJUU5jE99KsxaSfiyMHV9Yt0aLVxs,87
29
+ soothe_plugins-0.2.6.dist-info/entry_points.txt,sha256=1iy5q2222SIhGdn718PLfJ8VNxg5hBrgRZ79TMd9Yck,169
30
+ soothe_plugins-0.2.6.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: hatchling 1.30.1
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,4 @@
1
+ [soothe.plugins]
2
+ sample_echo = soothe_plugins.sample_echo:SampleEchoPlugin
3
+ skillify = soothe_plugins.skillify:SkillifyPlugin
4
+ weaver = soothe_plugins.weaver:WeaverPlugin