genxai-framework 0.1.0__py3-none-any.whl → 0.1.2__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.
- cli/commands/__init__.py +3 -1
- cli/commands/connector.py +309 -0
- cli/commands/workflow.py +80 -0
- cli/main.py +3 -1
- genxai/__init__.py +33 -0
- genxai/agents/__init__.py +8 -0
- genxai/agents/presets.py +53 -0
- genxai/connectors/__init__.py +10 -0
- genxai/connectors/base.py +3 -3
- genxai/connectors/config_store.py +106 -0
- genxai/connectors/github.py +117 -0
- genxai/connectors/google_workspace.py +124 -0
- genxai/connectors/jira.py +108 -0
- genxai/connectors/notion.py +97 -0
- genxai/connectors/slack.py +121 -0
- genxai/core/agent/config_io.py +32 -1
- genxai/core/agent/runtime.py +41 -4
- genxai/core/graph/__init__.py +3 -0
- genxai/core/graph/engine.py +218 -11
- genxai/core/graph/executor.py +103 -10
- genxai/core/graph/nodes.py +28 -0
- genxai/core/graph/workflow_io.py +199 -0
- genxai/flows/__init__.py +33 -0
- genxai/flows/auction.py +66 -0
- genxai/flows/base.py +134 -0
- genxai/flows/conditional.py +45 -0
- genxai/flows/coordinator_worker.py +62 -0
- genxai/flows/critic_review.py +62 -0
- genxai/flows/ensemble_voting.py +49 -0
- genxai/flows/loop.py +42 -0
- genxai/flows/map_reduce.py +61 -0
- genxai/flows/p2p.py +146 -0
- genxai/flows/parallel.py +27 -0
- genxai/flows/round_robin.py +24 -0
- genxai/flows/router.py +45 -0
- genxai/flows/selector.py +63 -0
- genxai/flows/subworkflow.py +35 -0
- genxai/llm/factory.py +17 -10
- genxai/llm/providers/anthropic.py +116 -1
- genxai/observability/logging.py +2 -2
- genxai/security/auth.py +10 -6
- genxai/security/cost_control.py +6 -6
- genxai/security/jwt.py +2 -2
- genxai/security/pii.py +2 -2
- genxai/tools/builtin/__init__.py +3 -0
- genxai/tools/builtin/communication/human_input.py +32 -0
- genxai/tools/custom/test-2.py +19 -0
- genxai/tools/custom/test_tool_ui.py +9 -0
- genxai/tools/persistence/service.py +3 -3
- genxai/triggers/schedule.py +2 -2
- genxai/utils/tokens.py +6 -0
- {genxai_framework-0.1.0.dist-info → genxai_framework-0.1.2.dist-info}/METADATA +63 -12
- {genxai_framework-0.1.0.dist-info → genxai_framework-0.1.2.dist-info}/RECORD +57 -28
- {genxai_framework-0.1.0.dist-info → genxai_framework-0.1.2.dist-info}/WHEEL +0 -0
- {genxai_framework-0.1.0.dist-info → genxai_framework-0.1.2.dist-info}/entry_points.txt +0 -0
- {genxai_framework-0.1.0.dist-info → genxai_framework-0.1.2.dist-info}/licenses/LICENSE +0 -0
- {genxai_framework-0.1.0.dist-info → genxai_framework-0.1.2.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: genxai-framework
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.2
|
|
4
4
|
Summary: Advanced Agentic AI Framework with Graph-Based Orchestration
|
|
5
5
|
Author-email: GenXAI Team <team@genxai.dev>
|
|
6
6
|
License: MIT
|
|
@@ -81,9 +81,9 @@ Dynamic: license-file
|
|
|
81
81
|
|
|
82
82
|
# GenXAI - Advanced Agentic AI Framework
|
|
83
83
|
|
|
84
|
-
**Version:** 1.0.0
|
|
85
|
-
**Status:**
|
|
86
|
-
**License:** MIT
|
|
84
|
+
**Version:** 1.0.0
|
|
85
|
+
**Status:** Active Development
|
|
86
|
+
**License:** MIT
|
|
87
87
|
|
|
88
88
|
---
|
|
89
89
|
|
|
@@ -155,7 +155,7 @@ Comprehensive documentation is available in the following files:
|
|
|
155
155
|
|
|
156
156
|
- **[ARCHITECTURE.md](./ARCHITECTURE.md)** - Complete system architecture and design principles
|
|
157
157
|
- **[REQUIREMENTS.md](./REQUIREMENTS.md)** - Detailed functional and non-functional requirements
|
|
158
|
-
- **[IMPLEMENTATION_PLAN.md](./IMPLEMENTATION_PLAN.md)** -
|
|
158
|
+
- **[IMPLEMENTATION_PLAN.md](./IMPLEMENTATION_PLAN.md)** - Development roadmap
|
|
159
159
|
- **[TOOLS_DESIGN.md](./TOOLS_DESIGN.md)** - Tool system architecture and 50+ built-in tools
|
|
160
160
|
- **[MEMORY_DESIGN.md](./MEMORY_DESIGN.md)** - Multi-layered memory system design
|
|
161
161
|
|
|
@@ -229,7 +229,7 @@ See [ARCHITECTURE.md](./ARCHITECTURE.md) for complete details.
|
|
|
229
229
|
- Beta testing
|
|
230
230
|
- Official launch 🚀
|
|
231
231
|
|
|
232
|
-
See [IMPLEMENTATION_PLAN.md](./IMPLEMENTATION_PLAN.md) for
|
|
232
|
+
See [IMPLEMENTATION_PLAN.md](./IMPLEMENTATION_PLAN.md) for the timeline.
|
|
233
233
|
|
|
234
234
|
---
|
|
235
235
|
|
|
@@ -286,6 +286,48 @@ graph.add_edge(Edge(source="support", target="end"))
|
|
|
286
286
|
result = await graph.run(input_data="My app crashed")
|
|
287
287
|
```
|
|
288
288
|
|
|
289
|
+
### Flow Orchestrator Examples
|
|
290
|
+
|
|
291
|
+
GenXAI also ships with lightweight flow orchestrators for common patterns:
|
|
292
|
+
|
|
293
|
+
```python
|
|
294
|
+
from genxai import AgentFactory, RoundRobinFlow, SelectorFlow, P2PFlow
|
|
295
|
+
|
|
296
|
+
agents = [
|
|
297
|
+
AgentFactory.create_agent(id="analyst", role="Analyst", goal="Analyze"),
|
|
298
|
+
AgentFactory.create_agent(id="writer", role="Writer", goal="Write"),
|
|
299
|
+
]
|
|
300
|
+
|
|
301
|
+
# Round-robin flow
|
|
302
|
+
round_robin = RoundRobinFlow(agents)
|
|
303
|
+
|
|
304
|
+
# Selector flow
|
|
305
|
+
def choose_next(state, agent_ids):
|
|
306
|
+
return agent_ids[state.get("selector_hop", 0) % len(agent_ids)]
|
|
307
|
+
|
|
308
|
+
selector = SelectorFlow(agents, selector=choose_next, max_hops=3)
|
|
309
|
+
|
|
310
|
+
# P2P flow
|
|
311
|
+
p2p = P2PFlow(agents, max_rounds=4, consensus_threshold=0.7)
|
|
312
|
+
```
|
|
313
|
+
|
|
314
|
+
See runnable examples in:
|
|
315
|
+
- `examples/code/flow_round_robin_example.py`
|
|
316
|
+
- `examples/code/flow_selector_example.py`
|
|
317
|
+
- `examples/code/flow_p2p_example.py`
|
|
318
|
+
- `examples/code/flow_parallel_example.py`
|
|
319
|
+
- `examples/code/flow_conditional_example.py`
|
|
320
|
+
- `examples/code/flow_loop_example.py`
|
|
321
|
+
- `examples/code/flow_router_example.py`
|
|
322
|
+
- `examples/code/flow_ensemble_voting_example.py`
|
|
323
|
+
- `examples/code/flow_critic_review_example.py`
|
|
324
|
+
- `examples/code/flow_coordinator_worker_example.py`
|
|
325
|
+
- `examples/code/flow_map_reduce_example.py`
|
|
326
|
+
- `examples/code/flow_subworkflow_example.py`
|
|
327
|
+
- `examples/code/flow_auction_example.py`
|
|
328
|
+
|
|
329
|
+
Full flow documentation: [docs/FLOWS.md](./docs/FLOWS.md)
|
|
330
|
+
|
|
289
331
|
### Trigger SDK Quick Start
|
|
290
332
|
|
|
291
333
|
```python
|
|
@@ -350,6 +392,16 @@ workflow:
|
|
|
350
392
|
condition: "category == 'technical'"
|
|
351
393
|
```
|
|
352
394
|
|
|
395
|
+
Shared memory template:
|
|
396
|
+
|
|
397
|
+
```bash
|
|
398
|
+
genxai workflow run examples/nocode/shared_memory_workflow.yaml \
|
|
399
|
+
--input '{"task": "Draft a short response"}'
|
|
400
|
+
```
|
|
401
|
+
|
|
402
|
+
See no-code templates (including a shared memory example) in:
|
|
403
|
+
- `examples/nocode/README.md`
|
|
404
|
+
|
|
353
405
|
---
|
|
354
406
|
|
|
355
407
|
## 🛠️ Technology Stack
|
|
@@ -443,10 +495,9 @@ workflow:
|
|
|
443
495
|
|
|
444
496
|
## 🤝 Contributing
|
|
445
497
|
|
|
446
|
-
We welcome contributions! This project is
|
|
498
|
+
We welcome contributions! This project is in active development. We provide:
|
|
447
499
|
|
|
448
500
|
- Contributing guidelines
|
|
449
|
-
- Code of conduct
|
|
450
501
|
- Development setup instructions
|
|
451
502
|
- Issue templates
|
|
452
503
|
- Pull request templates
|
|
@@ -455,7 +506,7 @@ We welcome contributions! This project is currently in the design phase. Once im
|
|
|
455
506
|
|
|
456
507
|
## 📜 License
|
|
457
508
|
|
|
458
|
-
MIT License
|
|
509
|
+
MIT License
|
|
459
510
|
|
|
460
511
|
---
|
|
461
512
|
|
|
@@ -486,9 +537,9 @@ Inspired by:
|
|
|
486
537
|
|
|
487
538
|
## 📈 Project Status
|
|
488
539
|
|
|
489
|
-
**Current Phase**:
|
|
490
|
-
**Next Milestone**:
|
|
491
|
-
**Expected Launch**:
|
|
540
|
+
**Current Phase**: Active Development
|
|
541
|
+
**Next Milestone**: Complete visual editor + studio polish
|
|
542
|
+
**Expected Launch**: TBD
|
|
492
543
|
|
|
493
544
|
---
|
|
494
545
|
|
|
@@ -1,28 +1,38 @@
|
|
|
1
1
|
cli/__init__.py,sha256=vb-wwfq1Lz5emeSVLKdjlpog3wLhGLG4Hmc3gkeAmqk,77
|
|
2
|
-
cli/main.py,sha256=
|
|
3
|
-
cli/commands/__init__.py,sha256=
|
|
2
|
+
cli/main.py,sha256=TlaL5OYPuwJDcKv15vC17kqKHnia0eGUGYo9QnFRkr0,696
|
|
3
|
+
cli/commands/__init__.py,sha256=p7EdJGzZ6GRxn3JRmZ_rPNJ6vDOkzuqYz73f9mKEpIg,252
|
|
4
4
|
cli/commands/approval.py,sha256=hBHHohdZh6Ii4g3olVfos5EvK5t2bHxdYIgUNqyF138,2417
|
|
5
5
|
cli/commands/audit.py,sha256=5bODjx6zrZCPZeRmlpcNjCScJI07Y_-LVEmQwO-Igco,3631
|
|
6
|
+
cli/commands/connector.py,sha256=8_a25BcuNfxkBvYQSV-0z24_W0aNtv89DlN-cia4Q7Y,11176
|
|
6
7
|
cli/commands/metrics.py,sha256=UrNB7raZG0fWcTy8aN68RXgeTOrBaHDBOF54whn9d9A,810
|
|
7
8
|
cli/commands/tool.py,sha256=Odzq413f-yCGNY-vaHOGe8js6eR9TzwhEizQKmLC2_Q,14113
|
|
8
|
-
|
|
9
|
+
cli/commands/workflow.py,sha256=OFK9Gi3KJ1DaUeGESsYxDxgPFFshHF6ELFMuwKgC7rE,2322
|
|
10
|
+
genxai/__init__.py,sha256=zu9v9FS5mgrZahb5ZBUv9CdyBJ4NrWBSNZkqQ-fZRLo,2233
|
|
11
|
+
genxai/agents/__init__.py,sha256=JB4t0Bua0jPR_panbjI34tHwSLH4BHcab0iFRzwg3XY,177
|
|
12
|
+
genxai/agents/presets.py,sha256=4XorjsyPPgdi-gahIUfmb9IgJ8yrWtS_DVxLbXeFhxk,1311
|
|
9
13
|
genxai/api/__init__.py,sha256=2h93nh1bAStn6a9UN9tHYdVOEdkK6Q9opM9JfIOfqW4,109
|
|
10
14
|
genxai/api/app.py,sha256=lslCmIJonUhw5qTkJJPmIR6tyXoFMX9SePQr4yKKU2E,616
|
|
11
15
|
genxai/config/__init__.py,sha256=oue5dGpDI3NsVaQjVBUPgEWVO9RydDvLrEGJMUEDbVc,150
|
|
12
16
|
genxai/config/settings.py,sha256=WGBFen9ObRMV1xLUBkyMs4a29u2D3QXVDmd1QiJkhdo,1004
|
|
13
|
-
genxai/connectors/__init__.py,sha256=
|
|
14
|
-
genxai/connectors/base.py,sha256=
|
|
17
|
+
genxai/connectors/__init__.py,sha256=smFRQqkUfTbC4aQ_pw_WYoEzGO-F4ibxyxc9qVEyWTs,992
|
|
18
|
+
genxai/connectors/base.py,sha256=VW0Rgg8-jBHeX0OEqZF0sNXpb6UIATCDYUEzM8vnQ1o,4320
|
|
19
|
+
genxai/connectors/config_store.py,sha256=c0MzEo4TiJeL2swFHkF8QdYLY4A_CchDUIeMM4sKMng,3525
|
|
20
|
+
genxai/connectors/github.py,sha256=8OGScHVrH1qXK2m3QQt2AKAXJ6k3aS4bCOzWIusCjDM,3623
|
|
21
|
+
genxai/connectors/google_workspace.py,sha256=zk5xQM-QhkfGBwqbQqRBFt5nNOlxmsNZdo63i9plwGE,4273
|
|
22
|
+
genxai/connectors/jira.py,sha256=eoHxpYLBCSui1I-D4W9RDI2rhSo-J6K7xDD5c_054jc,3637
|
|
15
23
|
genxai/connectors/kafka.py,sha256=SGJfLWb7J3XkfpX851LSNOmI5kNHN-F8LHKqUQ_AHiU,3012
|
|
24
|
+
genxai/connectors/notion.py,sha256=r-eahKisIdNq5eODUsbZ37KTzOlc1amKnTwz21JEGLc,3371
|
|
16
25
|
genxai/connectors/postgres_cdc.py,sha256=ZfOP99VSVbIDXCnQfKlk7wXLPv9KgC369IWpq6818pk,3052
|
|
17
26
|
genxai/connectors/registry.py,sha256=q32sp6v9aq4oaezANuOqpV6Hthhp0KFv_pEZNqpqxGk,1237
|
|
27
|
+
genxai/connectors/slack.py,sha256=kTAnyUjGiwfUt4ptpb-JzKmKz1Tw9ugbriY3v6_dkfs,4214
|
|
18
28
|
genxai/connectors/sqs.py,sha256=WBaQTX_WbRpSL2jgUG0tl2F5TKjmKQjVZzDqptmHXbk,3211
|
|
19
29
|
genxai/connectors/webhook.py,sha256=f6KVSAFrZcNqT0RKC3AveMv8X8cWIsS-QdAkA7u-G30,2532
|
|
20
30
|
genxai/core/__init__.py,sha256=_rrzjEpoPvvUZs0OPFTsrw0LpqiefSeNHhERN4GscDk,647
|
|
21
31
|
genxai/core/agent/__init__.py,sha256=oQTkLNZMu8y7tOoUxP92ePpGAMs2st1ug-hJig9WgCA,804
|
|
22
32
|
genxai/core/agent/base.py,sha256=qjop8py8yr_BQi4ChdHwxb5TL6akN6jRFd7aUUiUnOM,6065
|
|
23
|
-
genxai/core/agent/config_io.py,sha256=
|
|
33
|
+
genxai/core/agent/config_io.py,sha256=w7ZVXSFUd2bfkGKNt-QW-SwzSk8T-Jj1bIx3qmncUow,3548
|
|
24
34
|
genxai/core/agent/registry.py,sha256=-P25g4qkwK5DvqyIA5unwghm0MqqKO2Ddm7fFp0RSbg,2518
|
|
25
|
-
genxai/core/agent/runtime.py,sha256=
|
|
35
|
+
genxai/core/agent/runtime.py,sha256=JnL4sAyMr8szwMkCFp6TRy0mQozrJpH7dmqhe7l65MM,37450
|
|
26
36
|
genxai/core/communication/__init__.py,sha256=Zg0IDCtFv-xdbstsfZ-Lk4p9tVFURdS0Ixd9xFKRa9Y,259
|
|
27
37
|
genxai/core/communication/collaboration.py,sha256=MduOBHYD6qAXHrm8TlSeVP0R177KSOCQVrRis8DwVSo,1216
|
|
28
38
|
genxai/core/communication/message_bus.py,sha256=Knp02zEbWwVeGn-oNlhraO1M_4-qWBF6UwoYHEPmQlA,6240
|
|
@@ -30,13 +40,14 @@ genxai/core/communication/protocols.py,sha256=MNYU8B1n34BGD9APNOkCm1XLrE8AiFQDn7
|
|
|
30
40
|
genxai/core/execution/__init__.py,sha256=8SU_ra0f7zMio48JQzMrjyofQW7Ht3wUMROSFYz1J_E,492
|
|
31
41
|
genxai/core/execution/metadata.py,sha256=96mEx4meT5si3vrc4E-HMAlkkbZIGDVRm7EertNUHJQ,6025
|
|
32
42
|
genxai/core/execution/queue.py,sha256=59S9ZYBC8-2bDhykyxa-KuFgAWdrRuHHWNpo2EOaH1E,6322
|
|
33
|
-
genxai/core/graph/__init__.py,sha256=
|
|
43
|
+
genxai/core/graph/__init__.py,sha256=RNsF6G_covoF9MVUdsRklAMJJuBnLxku_NPbkdeolFc,917
|
|
34
44
|
genxai/core/graph/checkpoints.py,sha256=6Njc-FaDeKR08Xhl4QyQWzdU465DutfM5QN1op2lJ3g,2274
|
|
35
45
|
genxai/core/graph/edges.py,sha256=NwiHiMQwpo6CG-HPKtVO9ee-F1nrfYCMenqNWLkAb4U,3966
|
|
36
|
-
genxai/core/graph/engine.py,sha256=
|
|
37
|
-
genxai/core/graph/executor.py,sha256=
|
|
38
|
-
genxai/core/graph/nodes.py,sha256=
|
|
46
|
+
genxai/core/graph/engine.py,sha256=GdRHFEnaPvLMkWGV1Ac2uUVZ7Af4t2zm0JLC7diy-GY,36759
|
|
47
|
+
genxai/core/graph/executor.py,sha256=GLEvIisTOpZV3a2pPBhNx6jwr9lEDEG8-aa_96wManE,21836
|
|
48
|
+
genxai/core/graph/nodes.py,sha256=mkmKNFK_AnNq01oU1hGE4I4P_Fpfi8V0yvt73rJfb10,5295
|
|
39
49
|
genxai/core/graph/trigger_runner.py,sha256=yoZlfGUO9___GjJT3cMXqefYZmVwSLu5TVgfnoz98G0,1220
|
|
50
|
+
genxai/core/graph/workflow_io.py,sha256=HpW8-nqsVDXt9e_o4xwnBnDeeUe0vD-Xhs87hxEjQEA,7592
|
|
40
51
|
genxai/core/memory/__init__.py,sha256=YqoYq_iaiOCZ-vrmOCiQr491pYFtEYFbLUhpTUUfKPE,599
|
|
41
52
|
genxai/core/memory/base.py,sha256=HN3D-uK1tD3Lu6vsp8c-l2ePBokfCWEJZL7uGF-dhEU,2068
|
|
42
53
|
genxai/core/memory/embedding.py,sha256=pwTey-HaOrGpROsMTKG4yj4SEcpJQVgjYPAcUTz9Bg8,10013
|
|
@@ -53,30 +64,45 @@ genxai/core/memory/working.py,sha256=lI0utbuF5FK1B04YB0-SpNMZnWDBgYUHnCodcpdkseQ
|
|
|
53
64
|
genxai/core/state/__init__.py,sha256=RV7-2nEjzjpNk7L2k6M9BWBrcL6LgNn3uKCy6C783z8,189
|
|
54
65
|
genxai/core/state/manager.py,sha256=WTZZTAkBqfFnqa6X8bjrzPmvxhRa4WleNzKmaBTjdLQ,8621
|
|
55
66
|
genxai/core/state/schema.py,sha256=TN30IivQ1QAzM0-Ar5O1RNmFQ-LzLPP43Fn3XQEjFcw,3562
|
|
67
|
+
genxai/flows/__init__.py,sha256=388R3P6kkIAI539ny2xWNs5R2LgWFat26iD2yHOHlTo,1075
|
|
68
|
+
genxai/flows/auction.py,sha256=EM7sdqtCcUqgUb3JhX23mgpQX4ef6hNERVT0ExqaaO8,2107
|
|
69
|
+
genxai/flows/base.py,sha256=m8BKMh7-GE9nsCGy68tHLg9aFhDg55QALWaST5JXu9k,4625
|
|
70
|
+
genxai/flows/conditional.py,sha256=lFTjpgPHUmvarp05rKnwjCnoc4C88afwM9dRhHqfxcs,1378
|
|
71
|
+
genxai/flows/coordinator_worker.py,sha256=AEW8ZGiuD-iZJq6P68ROXPDMuD9WqSle8N2yT94WWZs,2019
|
|
72
|
+
genxai/flows/critic_review.py,sha256=wcieK1MtrEBHGcleL9Cx6pkaJq5ousHU8yFQeQGMszA,1995
|
|
73
|
+
genxai/flows/ensemble_voting.py,sha256=_stnOXxbb5Ja0sL5YHCLslN_JlMX6Myd6pkfNZqYlE8,1551
|
|
74
|
+
genxai/flows/loop.py,sha256=Ece_CZ_kYo9Y6urIEFdmWidt9j8X8g5UFMhXYLdoOD8,1348
|
|
75
|
+
genxai/flows/map_reduce.py,sha256=48YhnK1-7CpMROnf6_vAeOYSv5DP-UcAmphCqW0RFac,2011
|
|
76
|
+
genxai/flows/p2p.py,sha256=AhcIcoKQpI3iaRjtzjt7LFMpITbjTDI0eY8z0kxNShs,5199
|
|
77
|
+
genxai/flows/parallel.py,sha256=9m7PWNhr0_BSKzYKeSi5anjUsfbUYzCUzjpA2O0Obsw,863
|
|
78
|
+
genxai/flows/round_robin.py,sha256=lUGSL1nhhxbm57tqwJht8FM7l1lu_CHHFvo5bWh-tn4,675
|
|
79
|
+
genxai/flows/router.py,sha256=wpoYNwsbxndGXVBz4Ilvk3a6j8tWc4mzy4DUjGEGWGE,1364
|
|
80
|
+
genxai/flows/selector.py,sha256=zRGosX8KtWkzrs5WOHx6jNh2dFuvE3pmQP0zJ4ldU38,1821
|
|
81
|
+
genxai/flows/subworkflow.py,sha256=xCcbrtPV893S30pyu2jEiFABlmsDphpplXXvm-jddro,954
|
|
56
82
|
genxai/llm/__init__.py,sha256=dZhE99A78co-JjO666KJ1s29wfO1QZCC1aueT_9bQwQ,381
|
|
57
83
|
genxai/llm/base.py,sha256=zBVWAAGOIFWXp2Xm6oA9Y_JOo5EOyPObGiTuWwCzZYk,4259
|
|
58
|
-
genxai/llm/factory.py,sha256=
|
|
84
|
+
genxai/llm/factory.py,sha256=wXunvULgkZGoSmUOdImtZRx6SvxPtl36Mq5d38x11uY,12380
|
|
59
85
|
genxai/llm/routing.py,sha256=wV_aMjSzfq_oxTKhIK-nbO6SJfQSWzoeqezX4O6PUkI,2612
|
|
60
86
|
genxai/llm/providers/__init__.py,sha256=vY9WHmhhmCP-zctpOIAViDJbjnNqfINdSqPQttBfOhA,36
|
|
61
|
-
genxai/llm/providers/anthropic.py,sha256=
|
|
87
|
+
genxai/llm/providers/anthropic.py,sha256=Jii2kY5AqqUH69gU93xcEnfkRttCZRKC278rAYY4tK4,13529
|
|
62
88
|
genxai/llm/providers/cohere.py,sha256=WRugzfVWgzZ3wvbfRqfKtyUR1XrcvZtLP3b6MspVeLY,9145
|
|
63
89
|
genxai/llm/providers/google.py,sha256=QiiW6aLIibAWC5Rj09YSujIazSjMw_OFNBU7BkH7Bok,12019
|
|
64
90
|
genxai/llm/providers/ollama.py,sha256=hlJb0p5JUFTKwDZOhbhbZ01hn1QMEsDTOG7Ajh-edX4,4753
|
|
65
91
|
genxai/llm/providers/openai.py,sha256=nAyN0OyEVGxxDydlfmUq2ct6YuZEkm-NtbQSVl-Rwp4,8266
|
|
66
92
|
genxai/observability/__init__.py,sha256=S-75DlP3jO1u7FbRFCBVHg0dMGhrM7ariMSFPDvHWJw,228
|
|
67
|
-
genxai/observability/logging.py,sha256=
|
|
93
|
+
genxai/observability/logging.py,sha256=unODoNEprpwjTPWk6rRbGSes3eMfbFELxsj8heiH1Mw,9535
|
|
68
94
|
genxai/observability/metrics.py,sha256=MwvRMd8Ae6crm-bAE1zFYm02W_3PGpI-K1tWGVHQpZ8,14625
|
|
69
95
|
genxai/observability/tracing.py,sha256=Rx-tgHCA7ijeOS1cZsK0EDKhl8IrhzkI9IzTY4ivksY,11256
|
|
70
96
|
genxai/performance/__init__.py,sha256=THsAmJ91Ys5B84CwjvYLfx16Tn_9mIXmZ8ibtVdXr7Y,742
|
|
71
97
|
genxai/performance/cache.py,sha256=8_m7cyFi3raW-fJKzLmQ7nqW3HsLutgbzGPvWgdY5N8,7159
|
|
72
98
|
genxai/performance/pooling.py,sha256=HHGvOfb6YDuBzL-YZIpn1aqNuw5NpDAZ2BEwaRENew4,8407
|
|
73
99
|
genxai/security/audit.py,sha256=s-ohUnI4zNHnx6K6gf1hdhqeg8OccuSQR-fql-qlAHs,9491
|
|
74
|
-
genxai/security/auth.py,sha256=
|
|
75
|
-
genxai/security/cost_control.py,sha256=
|
|
100
|
+
genxai/security/auth.py,sha256=pmIBsoOVpFJcmhn3bSZdOvFS5vDHrhGBSghZb6jjKQ4,9137
|
|
101
|
+
genxai/security/cost_control.py,sha256=OyEoikrjvh1mky4wWGwHI2IJSqyGE8F4wWX_v1zmFIY,14897
|
|
76
102
|
genxai/security/default_policies.py,sha256=-Z9C4VE6MeMkF-MybB63GXGKG5kZExX9nGUhc3y9l6E,1495
|
|
77
|
-
genxai/security/jwt.py,sha256=
|
|
103
|
+
genxai/security/jwt.py,sha256=r4Ymsj7BxiiP1OjYtJ402Qocv_ZUpt1T-BBnvbrvmCk,3756
|
|
78
104
|
genxai/security/oauth.py,sha256=xsCkTmphCtRDQ_i3myOoUzI3miAOPMlFGnzT1deakjM,7085
|
|
79
|
-
genxai/security/pii.py,sha256
|
|
105
|
+
genxai/security/pii.py,sha256=-qr6EwC936Q4MXqhwR6gxEdtsSYp-qaTQAITH_X_HrQ,10223
|
|
80
106
|
genxai/security/policy_engine.py,sha256=u7qXThbqgyGIDp2CWu7ooiwS4WsvXpbG78PocLLqMts,2517
|
|
81
107
|
genxai/security/rate_limit.py,sha256=L9OOeII0hTu9_O4itivXuubBcOUICb9v5Af2QcjGRrA,9434
|
|
82
108
|
genxai/security/rbac.py,sha256=ZT1hso6ch1LmLZxisFD8IA4r9GFJwy-JHEe7FsiCKd8,6542
|
|
@@ -87,9 +113,10 @@ genxai/tools/dynamic.py,sha256=xNr8EgIvZ-Msm-2PEgBZ7MgTEArmVmgV-cM6QGobG9o,3554
|
|
|
87
113
|
genxai/tools/mcp_server.py,sha256=NwajypdLszEATVo_BHIK7iqleLIR5pQxMo4HGjDOvJk,5122
|
|
88
114
|
genxai/tools/registry.py,sha256=u_1N7JUoX_hnFy3dbUycsFTnneDChR8p60q-u3YfEWo,6503
|
|
89
115
|
genxai/tools/templates.py,sha256=k6Di2igBvMhT-tj2x3ULnKrSKvwjHgpYEMes9IhpsWQ,13498
|
|
90
|
-
genxai/tools/builtin/__init__.py,sha256=
|
|
116
|
+
genxai/tools/builtin/__init__.py,sha256=kU8XEuklulhn3_KtDz7Q2j1HSzPYXZ8DRSCfSV8FtOs,4504
|
|
91
117
|
genxai/tools/builtin/communication/__init__.py,sha256=dj2ohtLSPn9-IBY8oSo2azuFCacMui4PrMGrW8P0gXk,579
|
|
92
118
|
genxai/tools/builtin/communication/email_sender.py,sha256=Hywarx7t1qF5epJj-TitNCtB2NLoIHN1R04KhU768Tk,4665
|
|
119
|
+
genxai/tools/builtin/communication/human_input.py,sha256=fY2zpHjiYDwQ27vvgYCHzZxa8DgxpIb8hCc1-AzA80k,1043
|
|
93
120
|
genxai/tools/builtin/communication/notification_manager.py,sha256=sPdsqJ-3nscIc-me3tqKB48Dr4akd1AUk3l0xg7KMDI,5767
|
|
94
121
|
genxai/tools/builtin/communication/slack_notifier.py,sha256=7HeUJnj_t8Ry7QqUCc5mViiWYwTAY-gedsNru781gLA,3582
|
|
95
122
|
genxai/tools/builtin/communication/sms_sender.py,sha256=sE_IBpqNPFbpP-HQQ80apdC97IW26A5Q9sb-2Hw12Q0,3465
|
|
@@ -132,9 +159,11 @@ genxai/tools/builtin/web/http_client.py,sha256=J_Kfz3d3bIAc_O5lPOUFF-whMRYgudiaz
|
|
|
132
159
|
genxai/tools/builtin/web/url_validator.py,sha256=byFJ3oG9dOaifRQjI4hAKygT4KzA6NFhwybRhNHcfSQ,5622
|
|
133
160
|
genxai/tools/builtin/web/web_scraper.py,sha256=WMlVb5yM8UPGveH_t1BoZb4IQgf1xBZKyrhgQP3LKM8,5550
|
|
134
161
|
genxai/tools/custom/my_test_tool_2.py,sha256=OGAwfDia7mpLmekUhIEtywO_MryIeR_ydIojoUpqsFc,173
|
|
162
|
+
genxai/tools/custom/test-2.py,sha256=CaDmzGGYo-q0rmWZzG2Z3ehUdzVBt4nlF_3HHr9X7b0,347
|
|
163
|
+
genxai/tools/custom/test_tool_ui.py,sha256=FC3Zhe45HUm1psAYowtMdZ7JoV0ywpRvHbRMhB7xT50,153
|
|
135
164
|
genxai/tools/persistence/__init__.py,sha256=5iWxHtzdN-Dsa42N1TUsWlHYyNaPZh-FsKsxVX6C8JY,208
|
|
136
165
|
genxai/tools/persistence/models.py,sha256=K6_6zUb5ll91wcD7eJrGUrkzjy1r8vIzAWfqXFPboSM,1896
|
|
137
|
-
genxai/tools/persistence/service.py,sha256=
|
|
166
|
+
genxai/tools/persistence/service.py,sha256=GlnIwM8exzE9qWGF0Xeylmuxd3LeO0zYnh_rwAhhVIc,10209
|
|
138
167
|
genxai/tools/security/__init__.py,sha256=t2LMt1cLH_h6aSYbNql6XJtpW_eoCZ7NXil0uGbLj1s,303
|
|
139
168
|
genxai/tools/security/limits.py,sha256=EVffwnIFz2ceYqc_42Nm3drlhKnnnL__rLbIyGLID0Y,7553
|
|
140
169
|
genxai/tools/security/policy.py,sha256=ZQf2BV2rJCtAWrt5mQmCJbIT3KTkUUvXFu7eI0D1trY,598
|
|
@@ -144,13 +173,13 @@ genxai/triggers/base.py,sha256=Kl1mc-UpHipfwTU08l3wE4q0Xrs4G1B1UfvikwMbhfY,3573
|
|
|
144
173
|
genxai/triggers/file_watcher.py,sha256=FUaz6UQ9Y4S2HtatU2ev45JTM6uyYcyFuP_fKAYF6bQ,2482
|
|
145
174
|
genxai/triggers/queue.py,sha256=-fzx8KXjz9_3fvs6nayfx3QC2F6idXVKitAFCmp4Vss,2211
|
|
146
175
|
genxai/triggers/registry.py,sha256=4n_1IhRsc-7vKuTqWSjj5ftEIzTIAodSfZNgiEqiox8,2701
|
|
147
|
-
genxai/triggers/schedule.py,sha256=
|
|
176
|
+
genxai/triggers/schedule.py,sha256=eBLDUZSuRs69jsBhfOKt0gcnpVPZTLJQPybo_IAsH4E,2269
|
|
148
177
|
genxai/triggers/webhook.py,sha256=Mke2J8Du7FoooPi4RfQJlNFzuKGEKdEMMSZb6POHN04,2305
|
|
149
178
|
genxai/utils/__init__.py,sha256=G-QqU0cbUBxARFUvB5-AC0iU7d4wNiXRBGdVthItB6o,36
|
|
150
|
-
genxai/utils/tokens.py,sha256=
|
|
151
|
-
genxai_framework-0.1.
|
|
152
|
-
genxai_framework-0.1.
|
|
153
|
-
genxai_framework-0.1.
|
|
154
|
-
genxai_framework-0.1.
|
|
155
|
-
genxai_framework-0.1.
|
|
156
|
-
genxai_framework-0.1.
|
|
179
|
+
genxai/utils/tokens.py,sha256=9tNensSqmB2OgmbgLRouwzuTZAMm-DDf5Z0Ladyrw34,8941
|
|
180
|
+
genxai_framework-0.1.2.dist-info/licenses/LICENSE,sha256=Uhsc-LcYGNEbJle0w4oeluHqh_W1SJxrN-_M4UxhoH8,1068
|
|
181
|
+
genxai_framework-0.1.2.dist-info/METADATA,sha256=NEWGHCJh2KmeUv4rzxlGVNt6okVlWUtfWNNCivhigFI,17270
|
|
182
|
+
genxai_framework-0.1.2.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
|
|
183
|
+
genxai_framework-0.1.2.dist-info/entry_points.txt,sha256=f9AdbBidEnMS9u_UNPlWV8LCR-8Kp_93YxVP357WdoM,41
|
|
184
|
+
genxai_framework-0.1.2.dist-info/top_level.txt,sha256=Jqpp4DVVrqhEJL8WeKrExKNLEX3TIWdMAr7Gm3PU9SA,11
|
|
185
|
+
genxai_framework-0.1.2.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|