Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1970 commits
Select commit Hold shift + click to select a range
5ecfada
Gemini: [Issue #854] Fix Ollama sequential tool calling
Jul 12, 2025
ca52eea
Delete .gemini/settings.json
MervinPraison Jul 12, 2025
4a00804
Delete issue_details.json
MervinPraison Jul 12, 2025
92fa921
Merge pull request #856 from MervinPraison/gemini/issue-854-fix-ollam…
MervinPraison Jul 12, 2025
7b773f3
chore: add .gemini and issue_details.json to gitignore
MervinPraison Jul 12, 2025
2271b3b
Merge branch 'main' of https://github.com/MervinPraison/PraisonAI
MervinPraison Jul 12, 2025
b6f1cfa
Gemini: [Issue #854] Fix Ollama sequential tool calling loop
Jul 12, 2025
89c1415
Merge pull request #857 from MervinPraison/gemini/issue-854-fix-ollam…
MervinPraison Jul 12, 2025
cefad2a
feat: expand GitHub Actions permissions to include PR list and granul…
MervinPraison Jul 12, 2025
1a8c7ef
Merge branch 'main' of https://github.com/MervinPraison/PraisonAI
MervinPraison Jul 12, 2025
9a36656
Gemini: [Issue #854] Fix Ollama sequential tool calling loop
Jul 12, 2025
22263e5
feat: allow all users to trigger Gemini PR review and add debug logging
MervinPraison Jul 12, 2025
02c6bfb
fix: update checkout ref to handle both PR and issue comment triggers
MervinPraison Jul 12, 2025
e07a152
refactor: improve PR checkout logic in Gemini review workflow using d…
MervinPraison Jul 12, 2025
0b388b5
feat: restrict Gemini PR review to repo owners, members and collabora…
MervinPraison Jul 12, 2025
7e79b64
chore: remove debug workflow trigger step from Gemini PR review action
MervinPraison Jul 12, 2025
396a3ad
fix: correct variable interpolation syntax in PR review workflow
MervinPraison Jul 12, 2025
c2d01e9
chore: enhance variable handling in PR review workflow for improved c…
MervinPraison Jul 13, 2025
0208386
refactor: move validation test files to src directory and update LLM …
MervinPraison Jul 13, 2025
3e53dfb
feat: add description field to TaskOutput in validation feedback tests
MervinPraison Jul 13, 2025
214b6a9
Gemini: [Issue #860] Fix hierarchical process LLM fallback
Jul 13, 2025
e98928c
Gemini: [Issue #862] Fix infinite loop in async workflow
Jul 13, 2025
528c339
Gemini: [Issue #864] Fix parallel task loop
Jul 13, 2025
fc8ca22
fix: properly handle parallel task reset logic to prevent infinite loops
claude[bot] Jul 13, 2025
693ce51
fix: Complete removal of Ollama special handling for async method
claude[bot] Jul 13, 2025
0906dc0
Merge pull request #861 from MervinPraison/gemini/issue-860-fix-hiera…
MervinPraison Jul 13, 2025
fedb9da
Merge pull request #865 from MervinPraison/gemini/issue-864-fix-paral…
MervinPraison Jul 13, 2025
e8ea4ed
Merge pull request #858 from MervinPraison/gemini/issue-854-fix-ollam…
MervinPraison Jul 13, 2025
6ac3d78
Merge pull request #863 from MervinPraison/gemini/issue-862-fix-async…
MervinPraison Jul 13, 2025
c971fa8
chore: bump PraisonAI to 2.2.54 and update Gemini workflows
MervinPraison Jul 13, 2025
840b8b2
feat: Add multi-provider/multi-model support with intelligent routing
claude[bot] Jul 13, 2025
92281a6
fix: Implement Ollama sequential tool calling fix
claude[bot] Jul 13, 2025
44ea716
feat: integrate Trafilatura for high-quality URL content extraction
claude[bot] Jul 13, 2025
4d61543
enhance: Improve Ollama provider detection
claude[bot] Jul 14, 2025
d228883
fix: prevent infinite loop in parallel task execution by exiting work…
claude[bot] Jul 14, 2025
48d8534
fix: ensure callbacks work regardless of verbose setting
claude[bot] Jul 14, 2025
3d6ebb3
test: add test scripts for callback fix verification
claude[bot] Jul 14, 2025
b3c0f2c
fix: enable true parallel execution for async tasks in sequential mode
claude[bot] Jul 14, 2025
db2b52b
fix: Support GuardrailResult return type in guardrail functions (#875)
claude[bot] Jul 14, 2025
3524c98
feat: Add Gemini structured output support
claude[bot] Jul 14, 2025
cbfdf55
fix: prevent duplicate callback invocations in LLM response generation
claude[bot] Jul 14, 2025
262d46e
fix: use LLM abstraction instead of hardcoded OpenAI in hierarchical …
claude[bot] Jul 14, 2025
e5ee0c7
fix: Fix critical issues in multi-provider implementation
claude[bot] Jul 14, 2025
3f09546
Merge pull request #879 from MervinPraison/claude/issue-854-20250713_…
MervinPraison Jul 14, 2025
6ee2f64
ci: simplify Gemini trigger command from '@gemini review' to '@gemini'
MervinPraison Jul 14, 2025
0dc15ab
feat: exclude @gemini triage command from issue review workflow
MervinPraison Jul 14, 2025
73a5a2a
refactor: update Claude GitHub Action with simplified OAuth authentic…
MervinPraison Jul 14, 2025
072c3c7
fix: Improve guardrail validation and add missing type hints
claude[bot] Jul 14, 2025
f049c3c
fix: correct LLM interface usage and improve code quality
claude[bot] Jul 14, 2025
573f8c0
fix: Address critical issues with Gemini structured output implementa…
claude[bot] Jul 14, 2025
b6435ff
fix: resolve callback duplication and validation timing issues
claude[bot] Jul 14, 2025
830d549
fix: ensure interaction_displayed flag prevents all duplicate callbacks
claude[bot] Jul 14, 2025
9a6eb72
Add 10 grok4 intelligent agent files
devops-vestradata Jul 14, 2025
8faf6c9
fix: address code review issues for Trafilatura integration
claude[bot] Jul 14, 2025
4e976e5
feat: add support for Gemini embedding models
claude[bot] Jul 14, 2025
577061d
fix: prevent event loop blocking and refactor async task handling
claude[bot] Jul 14, 2025
a6d3099
test: add test script for async task parallel execution
claude[bot] Jul 14, 2025
007672c
fix: handle single function as tools parameter to prevent iteration e…
claude[bot] Jul 14, 2025
9d2f501
Merge pull request #890 from Dhivya-Bharathy/grok4-agents-batch-upload
MervinPraison Jul 14, 2025
0ad9721
refactor: extract duplicate workflow completion logic into helper method
claude[bot] Jul 14, 2025
a33b85b
fix: Improve Ollama sequential tool calling handling
claude[bot] Jul 14, 2025
fe59d38
Merge pull request #888 from MervinPraison/claude/issue-871-20250714_…
MervinPraison Jul 14, 2025
66309f6
feat: add Gemini structured output agent and enhance Claude workflow …
MervinPraison Jul 14, 2025
2ca91db
Merge branch 'main' of https://github.com/MervinPraison/PraisonAI
MervinPraison Jul 14, 2025
8c287de
ci: remove redundant repository checkout step from Claude workflow
MervinPraison Jul 14, 2025
1d9e566
Merge pull request #885 from MervinPraison/claude/issue-875-20250714_…
MervinPraison Jul 14, 2025
57e0240
Merge pull request #887 from MervinPraison/claude/issue-878-20250714_…
MervinPraison Jul 14, 2025
1dcafcd
Merge pull request #889 from MervinPraison/claude/issue-873-20250714_…
MervinPraison Jul 14, 2025
af4dba7
feat: add repository checkout step with fetch history in Claude workflow
MervinPraison Jul 14, 2025
451ee17
ci: remove max_turns limit from Claude code review workflow
MervinPraison Jul 14, 2025
4871391
ci: prevent bot accounts from triggering Claude workflow action
MervinPraison Jul 14, 2025
0df78fa
fix: Remove hardcoded regex logic from Ollama tool calling
github-actions[bot] Jul 14, 2025
97a85de
refactor: Rename MultiModelAgent to RouterAgent for better clarity
github-actions[bot] Jul 14, 2025
5e4341c
fix: prevent event loop blocking and refactor async task handling
github-actions[bot] Jul 14, 2025
f4d31fd
fix: clean up redundant conditionals and improve tool execution logic…
github-actions[bot] Jul 14, 2025
c18e332
fix: resolve callback duplication and validation timing issues
github-actions[bot] Jul 14, 2025
1544afd
Merge pull request #892 from MervinPraison/claude/pr-879-20250714_063758
MervinPraison Jul 14, 2025
3e8655e
Merge pull request #880 from MervinPraison/claude/issue-866-20250713_…
MervinPraison Jul 14, 2025
9ce6fef
chore: bump PraisonAI to 2.2.55 and PraisonAI Agents to 0.0.129 acros…
MervinPraison Jul 14, 2025
12d84e4
Merge branch 'main' into claude/issue-893-20250714_084251
MervinPraison Jul 14, 2025
8906c9f
feat: enhance callbacks with agent and task context (fixes #896)
github-actions[bot] Jul 14, 2025
81f355f
Rename test_async_sequential.py to src/praisonai-agents/test_async_se…
MervinPraison Jul 14, 2025
83bdc5d
Merge pull request #884 from MervinPraison/claude/issue-874-20250714_…
MervinPraison Jul 14, 2025
90ca7fb
refactor: move Trafilatura from core to custom tool example
github-actions[bot] Jul 14, 2025
7bb3e93
Merge branch 'main' into claude/issue-877-20250714_005101
MervinPraison Jul 14, 2025
e3050ed
fix: improve tools parameter backward compatibility handling
github-actions[bot] Jul 14, 2025
e5ca50f
Add Natural_Language_Codebase notebook
Dhivya-Bharathy Jul 14, 2025
4a474ec
Update Natural_Language_Codebase.ipynb
Dhivya-Bharathy Jul 14, 2025
9b86c9b
fix: exclude response_format parameter for Gemini image models
github-actions[bot] Jul 14, 2025
c76f6ae
Add Notion_Workspace_Assistant notebook
Dhivya-Bharathy Jul 14, 2025
277a779
fix: Enable self-reflection with tools in LLM class
github-actions[bot] Jul 14, 2025
0ab1f98
Merge pull request #881 from MervinPraison/claude/issue-869-20250713_…
MervinPraison Jul 14, 2025
9e9d8cd
Rename examples/python/tools/custom_trafilatura_tools.py to examples/…
MervinPraison Jul 14, 2025
7c887d1
Rename examples/python/tools/trafilatura_example.py to examples/pytho…
MervinPraison Jul 14, 2025
55c9f42
Rename examples/python/tools/searxng-search.py to examples/python/too…
MervinPraison Jul 14, 2025
7e84d2d
chore: increase GitHub action comment delay from 20s to 30s
MervinPraison Jul 14, 2025
db414d8
Merge branch 'main' of https://github.com/MervinPraison/PraisonAI
MervinPraison Jul 14, 2025
33c9ee4
Merge pull request #883 from MervinPraison/claude/issue-872-20250714_…
MervinPraison Jul 14, 2025
1954d71
Rename docs/gemini-embeddings.md to examples/python/memory/gemini-emb…
MervinPraison Jul 14, 2025
983bfb6
Merge pull request #891 from MervinPraison/claude/issue-870-20250714_…
MervinPraison Jul 14, 2025
5607da1
Merge pull request #886 from MervinPraison/claude/issue-877-20250714_…
MervinPraison Jul 14, 2025
ed0a9d3
Merge pull request #898 from Dhivya-Bharathy/add-Natural_Language_Cod…
MervinPraison Jul 14, 2025
5372ff6
fix: self-reflection now works with tools
github-actions[bot] Jul 14, 2025
32794cd
Merge pull request #894 from MervinPraison/claude/issue-876-20250714_…
MervinPraison Jul 14, 2025
1a05ece
Merge branch 'main' into claude/issue-896-20250714_104106
MervinPraison Jul 14, 2025
989d825
Merge pull request #900 from Dhivya-Bharathy/add-Notion_Workspace_Ass…
MervinPraison Jul 14, 2025
a8b3853
fix: add intelligent final answer detection to async method
github-actions[bot] Jul 14, 2025
af78f74
fix: improve robustness of Gemini model detection in ImageAgent
github-actions[bot] Jul 14, 2025
47f66f3
fix: Address reviewer feedback on self-reflection test files
github-actions[bot] Jul 14, 2025
11cf7e3
chore: bump praisonai to v2.2.56 and praisonaiagents to v0.0.130 acro…
MervinPraison Jul 14, 2025
0c4c8b0
Merge branch 'main' of https://github.com/MervinPraison/PraisonAI
MervinPraison Jul 14, 2025
4e3c5f5
fix: resolve litellm.BadRequestError with unrecognized output_json/ou…
github-actions[bot] Jul 14, 2025
842b764
Merge pull request #895 from MervinPraison/claude/issue-893-20250714_…
MervinPraison Jul 14, 2025
588b46e
fix: add string LLM support to LLMGuardrail for Gemini models
github-actions[bot] Jul 14, 2025
44b4689
Merge pull request #902 from MervinPraison/claude/issue-901-20250714_…
MervinPraison Jul 14, 2025
f22317a
Merge pull request #903 from MervinPraison/claude/issue-899-20250714_…
MervinPraison Jul 14, 2025
ccc636a
fix: resolve critical runtime issues in callback enhancement
github-actions[bot] Jul 14, 2025
efe1a18
Merge pull request #897 from MervinPraison/claude/issue-896-20250714_…
MervinPraison Jul 14, 2025
74c2efb
Fix issue #904: Loop task callback inheritance and enhanced metadata …
github-actions[bot] Jul 14, 2025
057eca2
refactor: simplify LLMGuardrail string handling and consolidate imports
github-actions[bot] Jul 14, 2025
5874741
refactor: move test files to src/praisonai-agents and bump version to…
MervinPraison Jul 14, 2025
f789bf5
Merge pull request #908 from MervinPraison/claude/issue-907-20250714_…
MervinPraison Jul 14, 2025
ee563c0
Merge pull request #910 from MervinPraison/claude/issue-905-20250714_…
MervinPraison Jul 14, 2025
b5a2720
refactor: update tool imports in test files from calculator to evalua…
MervinPraison Jul 14, 2025
98b26f8
Merge branch 'main' of https://github.com/MervinPraison/PraisonAI
MervinPraison Jul 14, 2025
0d928d1
fix: Add callback execution to synchronous display functions
github-actions[bot] Jul 14, 2025
78fe985
Merge pull request #912 from MervinPraison/claude/issue-904-20250714_…
MervinPraison Jul 14, 2025
85667ed
fix: add execute and aexecute methods to Agent class for backward com…
github-actions[bot] Jul 14, 2025
df542db
fix: Ensure consistent callback execution across all display functions
github-actions[bot] Jul 14, 2025
8135759
Merge pull request #913 from MervinPraison/claude/issue-906-20250714_…
MervinPraison Jul 14, 2025
4132a6d
fix: resolve duplicate callback execution in LLM interaction handling
github-actions[bot] Jul 14, 2025
1176903
fix: address code review issues in test files
github-actions[bot] Jul 14, 2025
15401ca
feat: add PR creation permissions and request in auto-issue workflow
MervinPraison Jul 14, 2025
d2d76aa
chore: update claude review request message to include follow-up action
MervinPraison Jul 14, 2025
6f9f19e
Merge pull request #914 from MervinPraison/claude/issue-901-20250714_…
MervinPraison Jul 14, 2025
680638d
Merge pull request #915 from MervinPraison/claude/issue-911-20250714_…
MervinPraison Jul 14, 2025
83f609e
Delete ISSUE_878_REPRODUCTION_GUIDE.md
MervinPraison Jul 14, 2025
6ee3a92
Delete reproduce_issue_878.py
MervinPraison Jul 14, 2025
bed1df3
Merge pull request #916 from MervinPraison/claude/issue-878-20250714_…
MervinPraison Jul 14, 2025
2e60b54
feat: add allowed tools configuration for Claude GitHub action workflow
MervinPraison Jul 14, 2025
0dbd5d9
Merge branch 'main' of https://github.com/MervinPraison/PraisonAI
MervinPraison Jul 14, 2025
b5ee974
chore: bump praisonai to v2.2.58 and praisonaiagents to v0.0.132 acro…
MervinPraison Jul 14, 2025
887aac2
refactor: move test files into src/praisonai-agents directory for bet…
MervinPraison Jul 14, 2025
c41173d
feat: Add Gemini internal tools examples
github-actions[bot] Jul 14, 2025
3bcc8c2
fix: Replace eval() with safe AST-based expression evaluator and remo…
github-actions[bot] Jul 14, 2025
9821191
Merge pull request #917 from MervinPraison/claude/issue-867-20250714_…
MervinPraison Jul 14, 2025
8c4848a
feat: implement PostHog event tracking in telemetry module
MervinPraison Jul 15, 2025
b68b97e
chore: add gh tool permission and update claude review comment with P…
MervinPraison Jul 15, 2025
e110bf6
fix: resolve Ollama sequential tool calling argument mixing issue
github-actions[bot] Jul 15, 2025
ca9372e
fix: Add support for Gemini internal tools in tool formatting
github-actions[bot] Jul 15, 2025
9e54cfb
chore: clarify Claude review instructions to specify branch context
MervinPraison Jul 15, 2025
80a476f
feat: restrict review comments to PRs only and update Claude bot inst…
MervinPraison Jul 15, 2025
75cf3b7
refactor: optimize Gemini tools handling with shared utilities
github-actions[bot] Jul 15, 2025
4f7e576
Add Kimi2_Intelligent_Agents: 10 specialized AI agents
Jul 15, 2025
4277460
Merge pull request #924 from Dhivya-Bharathy/kimi2-agents-final
MervinPraison Jul 15, 2025
cf386cf
Merge pull request #923 from MervinPraison/claude/issue-919-20250715_…
MervinPraison Jul 15, 2025
5da7781
chore: bump praisonai to v2.2.60 and praisonaiagents to v0.0.134
MervinPraison Jul 15, 2025
ae105a1
Merge pull request #922 from MervinPraison/claude/issue-918-20250715_…
MervinPraison Jul 15, 2025
68428f2
refactor: inline Gemini internal tools detection logic
github-actions[bot] Jul 15, 2025
d114462
Merge pull request #928 from MervinPraison/claude/issue-926-20250715_…
MervinPraison Jul 15, 2025
bc13d78
chore: bump praisonai version from 2.2.60 to 2.2.61 across Docker and…
MervinPraison Jul 15, 2025
faaff9f
Merge branch 'main' of https://github.com/MervinPraison/PraisonAI
MervinPraison Jul 15, 2025
5ad1491
chore: bump praisonai to v2.2.62 and praisonaiagents to v0.0.135 acro…
MervinPraison Jul 15, 2025
1861d9f
fix: Add session memory persistence for agent chat history
github-actions[bot] Jul 15, 2025
16fb96c
fix: Add missing increment_state method and improve chat history pers…
github-actions[bot] Jul 15, 2025
6bb8ea4
feat: add comprehensive examples for missing PraisonAI features
github-actions[bot] Jul 15, 2025
47cef79
fix: Add missing increment_state method and improve chat history pers…
github-actions[bot] Jul 15, 2025
b6fbc48
fix: Fix session memory persistence by disabling embeddings and corre…
github-actions[bot] Jul 15, 2025
ce9c86c
Rename SESSION_MEMORY_FIX_REVIEW.md to examples/python/session/SESSIO…
MervinPraison Jul 15, 2025
57032cf
Merge pull request #932 from MervinPraison/claude/issue-930-20250715_…
MervinPraison Jul 15, 2025
42911b1
chore: update numpy and scipy version constraints in dependency files
MervinPraison Jul 15, 2025
ea5a5ac
Merge pull request #933 from MervinPraison/claude/issue-931-20250715_…
MervinPraison Jul 15, 2025
dd8bab1
fix: Enhance session memory persistence and improve chat history mana…
MervinPraison Jul 15, 2025
835c28a
Merge branch 'main' of https://github.com/MervinPraison/PraisonAI
MervinPraison Jul 15, 2025
b9411e5
fix: Replace deprecated Pydantic .dict() with .model_dump() in exampl…
github-actions[bot] Jul 15, 2025
8d2e261
feat: Add AutoGen v0.4 support with backward compatibility
github-actions[bot] Jul 15, 2025
b35d15f
feat: update default model from gpt-4o to gpt-4o-mini and bump versio…
MervinPraison Jul 15, 2025
1f4ca53
fix: Ensure backward compatibility for Pydantic v1/v2 in hasattr checks
github-actions[bot] Jul 15, 2025
a4158b7
Merge pull request #936 from MervinPraison/claude/issue-935-20250715_…
MervinPraison Jul 15, 2025
93e2c0c
Merge pull request #937 from MervinPraison/claude/issue-934-20250715_…
MervinPraison Jul 15, 2025
50ac799
fix: Ensure agent names are valid Python identifiers for AutoGen v0.4
github-actions[bot] Jul 15, 2025
ca8e8a9
fix: Resolve Ollama infinite tool call loops by improving response ha…
github-actions[bot] Jul 15, 2025
960a3fa
feat: Add comprehensive examples for advanced PraisonAI agent features
github-actions[bot] Jul 15, 2025
6fbb1f4
fix: Improve sanitization to preserve double underscores
github-actions[bot] Jul 15, 2025
1c6de6f
Merge pull request #941 from MervinPraison/claude/issue-938-20250715-…
MervinPraison Jul 15, 2025
c2d9a9b
chore: bump praisonai version to 2.2.65 and add autogen-v4 dependencies
MervinPraison Jul 15, 2025
ff9f839
fix: Convert advanced examples to flat format with minimal code
github-actions[bot] Jul 15, 2025
ca62af0
refactor: eliminate code duplication and improve test quality in Olla…
github-actions[bot] Jul 15, 2025
af07784
Merge pull request #943 from MervinPraison/claude/issue-940-20250715-…
MervinPraison Jul 15, 2025
dc3ee2f
feat: Organize advanced examples into appropriate folders
github-actions[bot] Jul 15, 2025
6603124
Merge pull request #942 from MervinPraison/claude/issue-939-20250715-…
MervinPraison Jul 15, 2025
8c69834
fix: prevent Ollama tool summary from being overwritten by empty resp…
github-actions[bot] Jul 15, 2025
ec336d3
Delete test_ollama_response_fix.py
MervinPraison Jul 15, 2025
c15c8a6
refactor: move test files to src/praisonai-agents directory
MervinPraison Jul 15, 2025
e5e1113
Merge branch 'main' of https://github.com/MervinPraison/PraisonAI
MervinPraison Jul 15, 2025
536d98c
Merge pull request #944 from MervinPraison/claude/fix-ollama-response…
MervinPraison Jul 16, 2025
9514406
fix: prevent premature termination in Ollama sequential tool execution
github-actions[bot] Jul 16, 2025
42a4e09
Add 10 new agents to Kimi2_Intelligent_Agents (aerospace, bioinformat…
Jul 16, 2025
29a39c6
Reorganize models and providers structure - Move Kimi2 agents to mode…
Jul 16, 2025
bcbd3c8
feat: Enable imports from PraisonAI package for issue #950
github-actions[bot] Jul 16, 2025
985fc2a
fix: resolve task_name undefined error in LLM callback execution
github-actions[bot] Jul 16, 2025
e84191a
Update all provider examples to use new clean format with praisonaiag…
Jul 16, 2025
c816b59
refactor: replace hardcoded patterns with dynamic tool usage detection
github-actions[bot] Jul 16, 2025
e2a4a28
fix: correct function name in test_fix_verification.py
github-actions[bot] Jul 16, 2025
0d37860
fix: correct function name in test_fix_verification.py
github-actions[bot] Jul 16, 2025
e3dcbf3
fix: Resolve unconditional __all__ list issue causing import errors
github-actions[bot] Jul 16, 2025
5b836ef
Merge pull request #945 from MervinPraison/claude/issue-940-20250716-…
MervinPraison Jul 16, 2025
86a5f31
Revert "fix: prevent premature termination in Ollama sequential tool …
MervinPraison Jul 16, 2025
39b0a64
Merge pull request #953 from MervinPraison/revert-945-claude/issue-94…
MervinPraison Jul 16, 2025
2fd43ca
fix: prevent premature termination in Ollama sequential tool execution
github-actions[bot] Jul 16, 2025
ef0a124
refactor: Use dynamic approach for praisonaiagents imports
github-actions[bot] Jul 16, 2025
04788c5
Update model examples to use new clean format with praisonaiagents.Agent
Jul 16, 2025
7a4e582
fix: resolve Ollama infinite loop issue with minimal changes
github-actions[bot] Jul 16, 2025
bd1a827
cleanup: remove debug test files
github-actions[bot] Jul 16, 2025
fdcf2b5
Merge pull request #951 from MervinPraison/claude/issue-950-20250716-…
MervinPraison Jul 16, 2025
4261ede
refactor: reorganize test files and update package versions to 2.2.66
MervinPraison Jul 16, 2025
5d30c24
Merge pull request #952 from MervinPraison/claude/issue-947-20250716-…
MervinPraison Jul 16, 2025
26ad805
fix: accumulate tool results across iterations in Ollama sequential e…
github-actions[bot] Jul 16, 2025
cc5e04a
chore: bump praisonai to v2.2.67 and praisonaiagents to v0.0.138 acro…
MervinPraison Jul 16, 2025
47cf9d4
fix: accumulate tool results across iterations in Ollama sequential e…
github-actions[bot] Jul 16, 2025
7ecbeaa
Merge pull request #954 from MervinPraison/claude/issue-940-20250716-…
MervinPraison Jul 16, 2025
fea300e
Merge pull request #955 from MervinPraison/claude/pr-953-20250716-1258
MervinPraison Jul 16, 2025
ca211bc
Merge pull request #949 from Dhivya-Bharathy/models-providers-reorgan…
MervinPraison Jul 16, 2025
cd36d02
fix: accumulate tool results across iterations in Ollama sequential e…
github-actions[bot] Jul 16, 2025
b95579d
fix: comprehensive task_name undefined error resolution
github-actions[bot] Jul 16, 2025
0dc8795
fix: resolve task_name undefined error in async execution
github-actions[bot] Jul 16, 2025
90c4f12
fix: update LLM model in Ollama sequential agent from qwen3 to llama3…
MervinPraison Jul 16, 2025
27972b6
Merge branch 'main' of https://github.com/MervinPraison/PraisonAI
MervinPraison Jul 16, 2025
3d5e665
refactor: simplify redundant hasattr checks and fix test formatting
github-actions[bot] Jul 16, 2025
4f95b45
Merge pull request #957 from MervinPraison/claude/comprehensive-task-…
MervinPraison Jul 16, 2025
1ae6748
fix: ensure consistent Task/Response formatting across all LLM providers
github-actions[bot] Jul 16, 2025
54a0ac2
chore: bump PraisonAI to v2.2.68 and PraisonAI Agents to v0.0.140
MervinPraison Jul 16, 2025
51cb5a2
refactor: move test files to src/praisonai-agents directory for bette…
MervinPraison Jul 16, 2025
e138249
fix: ensure callback execution in all achat() paths
github-actions[bot] Jul 16, 2025
b51b3e2
docs: move star history section above feature roadmap for better visi…
MervinPraison Jul 16, 2025
b617367
fix: enable real-time streaming regardless of verbose setting
github-actions[bot] Jul 16, 2025
6d770e0
refactor: improve Ollama sequential fix with better test and deduplic…
github-actions[bot] Jul 16, 2025
4fcbfb6
fix: ensure callback execution in all achat() paths
github-actions[bot] Jul 16, 2025
9d9ce68
Merge pull request #959 from MervinPraison/claude/issue-947-20250716-…
MervinPraison Jul 16, 2025
f194073
chore: remove unused custom_display_fn from agent.py
github-actions[bot] Jul 16, 2025
58f0d2c
fix: add missing flag reset in async achat method for consistent disp…
github-actions[bot] Jul 16, 2025
a7a664e
Merge pull request #960 from MervinPraison/claude/issue-940-20250716-…
MervinPraison Jul 16, 2025
fea00ad
fix: complete streaming fix for all LLM providers and improve console…
github-actions[bot] Jul 16, 2025
b5cee38
fix: properly shutdown telemetry aiohttp sessions to prevent ImportEr…
github-actions[bot] Jul 16, 2025
8150768
Merge pull request #962 from MervinPraison/claude/issue-956-20250716-…
MervinPraison Jul 16, 2025
8fa6ffa
feat: upgrade praisonai to v2.2.69 and add realtime streaming support
MervinPraison Jul 16, 2025
a9641ad
Merge branch 'main' into claude/issue-958-20250716-2304
MervinPraison Jul 16, 2025
9fb062f
Merge pull request #961 from MervinPraison/claude/issue-958-20250716-…
MervinPraison Jul 16, 2025
9ae29b0
Merge pull request #965 from MervinPraison/claude/issue-963-20250716-…
MervinPraison Jul 16, 2025
3fa2a13
feat: implement evaluation framework for praisonaiagents
github-actions[bot] Jul 17, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
patreon: MervinPraison
ko_fi: MervinPraison
34 changes: 34 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
name: Bug report
about: Create a report to help us improve
title: '[BUG] '
labels: bug
assignees: ''
---

## Environment
- Provider (select one):
- [ ] Anthropic
- [ ] OpenAI
- [ ] Google Vertex AI
- [ ] AWS Bedrock
- [ ] Other: <!-- specify -->
- PraisonAI version: <!-- if known -->
- Operating System: <!-- e.g. macOS 14.3, Windows 11, Ubuntu 22.04 -->

## Full Code
<!-- Full code that reproduces the bug -->

## Steps to Reproduce
1. <!-- First step -->
2. <!-- Second step -->
3. <!-- And so on... -->

## Expected Behavior
<!-- What you expected to happen -->

## Actual Behavior
<!-- What actually happened -->

## Additional Context
<!-- Add any other context about the problem here, such as screenshots, logs, etc. -->
240 changes: 240 additions & 0 deletions .github/actions/claude-code-action/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,240 @@
name: "Claude Code Action"
description: "Run Claude Code in GitHub Actions workflows"

inputs:
anthropic_api_key:
description: "Anthropic API key"
required: false
github_token:
description: "GitHub token for Claude to operate with"
required: false
default: ${{ github.token }}
trigger_phrase:
description: "The trigger phrase to look for in comments, issue/PR bodies, and issue titles"
required: false
default: "@claude"
assignee_trigger:
description: "The assignee username that triggers the action (e.g. @claude). Only used for issue assignment"
required: false
max_turns:
description: "Maximum number of conversation turns Claude can take"
required: false
timeout_minutes:
description: "Timeout in minutes for execution"
required: false
default: "30"
model:
description: "Model to use (provider-specific format required for Bedrock/Vertex)"
required: false
use_bedrock:
description: "Use Amazon Bedrock with OIDC authentication instead of direct Anthropic API"
required: false
default: "false"
use_vertex:
description: "Use Google Vertex AI with OIDC authentication instead of direct Anthropic API"
required: false
default: "false"
allowed_tools:
description: "Additional tools for Claude to use (the base GitHub tools will always be included)"
required: false
default: ""
disallowed_tools:
description: "Tools that Claude should never use"
required: false
default: ""
custom_instructions:
description: "Additional custom instructions to include in the prompt for Claude"
required: false
default: ""
mcp_config:
description: "Additional MCP configuration (JSON string) that merges with the built-in GitHub MCP servers"
required: false
default: ""
claude_env:
description: "Custom environment variables to pass to Claude Code execution (YAML format)"
required: false
default: ""
direct_prompt:
description: "Direct prompt for Claude to execute automatically without needing a trigger (for automated workflows)"
required: false

runs:
using: "composite"
steps:
- name: Install Claude Code
shell: bash
run: npm install -g @anthropic-ai/claude-code

- name: Install GitHub MCP Server
shell: bash
run: |
claude mcp add-json github '{
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN",
"ghcr.io/github/github-mcp-server:sha-ff3036d"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "${{ inputs.github_token }}"
}
}'

- name: Extract GitHub Context and Create Prompt
shell: bash
id: prepare_context
run: |
echo "🔍 Extracting GitHub context from event: ${{ github.event_name }}"

# Function to check for trigger phrase
check_trigger() {
local text="$1"
local trigger="${{ inputs.trigger_phrase }}"
if [[ "$text" == *"$trigger"* ]]; then
return 0
fi
return 1
}

# Extract context based on event type
TRIGGER_FOUND="false"
USER_REQUEST=""
CONTEXT_INFO=""

case "${{ github.event_name }}" in
"issue_comment")
COMMENT_BODY="${{ github.event.comment.body }}"
ISSUE_TITLE="${{ github.event.issue.title }}"
ISSUE_NUMBER="${{ github.event.issue.number }}"

if check_trigger "$COMMENT_BODY"; then
TRIGGER_FOUND="true"
USER_REQUEST="$COMMENT_BODY"
CONTEXT_INFO="Issue Comment on #$ISSUE_NUMBER: $ISSUE_TITLE"
fi
;;

"pull_request_review_comment")
COMMENT_BODY="${{ github.event.comment.body }}"
PR_TITLE="${{ github.event.pull_request.title }}"
PR_NUMBER="${{ github.event.pull_request.number }}"

if check_trigger "$COMMENT_BODY"; then
TRIGGER_FOUND="true"
USER_REQUEST="$COMMENT_BODY"
CONTEXT_INFO="PR Comment on #$PR_NUMBER: $PR_TITLE"
fi
;;

"pull_request_review")
REVIEW_BODY="${{ github.event.review.body }}"
PR_TITLE="${{ github.event.pull_request.title }}"
PR_NUMBER="${{ github.event.pull_request.number }}"

if check_trigger "$REVIEW_BODY"; then
TRIGGER_FOUND="true"
USER_REQUEST="$REVIEW_BODY"
CONTEXT_INFO="PR Review on #$PR_NUMBER: $PR_TITLE"
fi
;;

"issues")
ISSUE_BODY="${{ github.event.issue.body }}"
ISSUE_TITLE="${{ github.event.issue.title }}"
ISSUE_NUMBER="${{ github.event.issue.number }}"

if check_trigger "$ISSUE_TITLE" || check_trigger "$ISSUE_BODY"; then
TRIGGER_FOUND="true"
USER_REQUEST="$ISSUE_BODY"
CONTEXT_INFO="Issue #$ISSUE_NUMBER: $ISSUE_TITLE"
elif [[ "${{ github.event.action }}" == "assigned" && -n "${{ inputs.assignee_trigger }}" ]]; then
ASSIGNEE="${{ github.event.assignee.login }}"
if [[ "$ASSIGNEE" == "${{ inputs.assignee_trigger }}" ]]; then
TRIGGER_FOUND="true"
USER_REQUEST="$ISSUE_BODY"
CONTEXT_INFO="Issue #$ISSUE_NUMBER assigned to $ASSIGNEE: $ISSUE_TITLE"
fi
fi
;;
esac

# Check for direct prompt override
if [[ -n "${{ inputs.direct_prompt }}" ]]; then
TRIGGER_FOUND="true"
USER_REQUEST="${{ inputs.direct_prompt }}"
CONTEXT_INFO="Automated GitHub workflow"
fi

if [[ "$TRIGGER_FOUND" != "true" ]]; then
echo "❌ No trigger phrase found or direct prompt provided. Exiting gracefully."
echo "SKIP_EXECUTION=true" >> $GITHUB_ENV
exit 0
fi

echo "✅ Trigger found! Context: $CONTEXT_INFO"

# Create comprehensive prompt
mkdir -p /tmp/claude-action
cat > /tmp/claude-action/github-context-prompt.txt << EOF
You are Claude Code, an AI assistant helping with GitHub workflows and code.

Repository: ${{ github.repository }}
Context: $CONTEXT_INFO
Event: ${{ github.event_name }}

User Request:
$USER_REQUEST

Please analyze the request and provide helpful assistance. You have access to repository tools and can help with:
- Code analysis and implementation
- GitHub workflows and automation
- Pull request reviews and feedback
- Issue resolution and bug fixes
- Documentation updates
- Testing and deployment

Respond naturally and helpfully to the user's request using the available tools.
EOF

echo "PROMPT_FILE=/tmp/claude-action/github-context-prompt.txt" >> $GITHUB_ENV
echo "SKIP_EXECUTION=false" >> $GITHUB_ENV

- name: Run Claude Code
if: env.SKIP_EXECUTION != 'true'
shell: bash
run: |
echo "🚀 Running Claude Code with GitHub context..."

# Build command arguments
CMD_ARGS=("-p" "--verbose" "--output-format" "stream-json")

# Add max turns if specified
if [[ -n "${{ inputs.max_turns }}" ]]; then
CMD_ARGS+=("--max-turns" "${{ inputs.max_turns }}")
fi

# Add allowed tools (include GitHub tools by default)
TOOLS="mcp__github__get_issue,mcp__github__get_issue_comments,mcp__github__update_issue,mcp__github__search_issues,mcp__github__list_issues,mcp__github__create_comment,Read,Write,Edit,Bash"
if [[ -n "${{ inputs.allowed_tools }}" ]]; then
TOOLS="$TOOLS,${{ inputs.allowed_tools }}"
fi
CMD_ARGS+=("--allowedTools" "$TOOLS")

# Add disallowed tools
if [[ -n "${{ inputs.disallowed_tools }}" ]]; then
CMD_ARGS+=("--disallowedTools" "${{ inputs.disallowed_tools }}")
fi

echo "📝 Executing Claude Code with prompt from file..."

# Execute Claude Code with timeout, using stdin for the prompt
TIMEOUT_SECONDS=$((${{ inputs.timeout_minutes }} * 60))
timeout $TIMEOUT_SECONDS claude "${CMD_ARGS[@]}" < "${{ env.PROMPT_FILE }}"

echo "✅ Claude Code execution completed"
env:
ANTHROPIC_API_KEY: ${{ inputs.anthropic_api_key }}
GITHUB_TOKEN: ${{ inputs.github_token }}
87 changes: 87 additions & 0 deletions .github/actions/claude-issue-triage-action/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
name: "Claude Issue Triage Action"
description: "Automatically triage GitHub issues using Claude Code"

inputs:
timeout_minutes:
description: "Timeout in minutes for execution"
required: false
default: "5"
anthropic_api_key:
description: "Anthropic API key"
required: true
github_token:
description: "GitHub token with repo and issues permissions"
required: true

runs:
using: "composite"
steps:
- name: Checkout repository code
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Create prompt file
shell: bash
run: |
mkdir -p /tmp/claude-prompts
cat > /tmp/claude-prompts/claude-issue-triage-prompt.txt << 'EOF'
You're an issue triage assistant for GitHub issues. Your task is to analyze the issue and select appropriate labels from the provided list.

IMPORTANT: Don't post any comments or messages to the issue. Your only action should be to apply labels.

Issue Information:
- REPO: ${{ github.repository }}
- ISSUE_NUMBER: ${{ github.event.issue.number }}

TASK OVERVIEW:

1. First, fetch the list of labels available in this repository by running: `gh label list`. Run exactly this command with nothing else.

2. Next, use the GitHub tools to get context about the issue:
- You have access to these tools:
- mcp__github__get_issue: Use this to retrieve the current issue's details including title, description, and existing labels
- mcp__github__get_issue_comments: Use this to read any discussion or additional context provided in the comments
- mcp__github__update_issue: Use this to apply labels to the issue (do not use this for commenting)
- mcp__github__search_issues: Use this to find similar issues that might provide context for proper categorization and to identify potential duplicate issues
- mcp__github__list_issues: Use this to understand patterns in how other issues are labeled
- Start by using mcp__github__get_issue to get the issue details

3. Analyze the issue content, considering:
- The issue title and description
- The type of issue (bug report, feature request, question, etc.)
- Technical areas mentioned
- Severity or priority indicators
- User impact
- Components affected

4. Select appropriate labels from the available labels list provided above:
- Choose labels that accurately reflect the issue's nature
- Be specific but comprehensive
- Select priority labels if you can determine urgency (high-priority, med-priority, or low-priority)
- Consider platform labels (android, ios) if applicable
- If you find similar issues using mcp__github__search_issues, consider using a "duplicate" label if appropriate. Only do so if the issue is a duplicate of another OPEN issue.

5. Apply the selected labels:
- Use mcp__github__update_issue to apply your selected labels
- DO NOT post any comments explaining your decision
- DO NOT communicate directly with users
- If no labels are clearly applicable, do not apply any labels

IMPORTANT GUIDELINES:
- Be thorough in your analysis
- Only select labels from the provided list above
- DO NOT post any comments to the issue
- Your ONLY action should be to apply labels using mcp__github__update_issue
- It's okay to not add any labels if none are clearly applicable
EOF

- name: Run Claude Code
uses: ./.github/actions/claude-code-action
with:
prompt_file: /tmp/claude-prompts/claude-issue-triage-prompt.txt
allowed_tools: "Bash(gh label list),mcp__github__get_issue,mcp__github__get_issue_comments,mcp__github__update_issue,mcp__github__search_issues,mcp__github__list_issues"
install_github_mcp: "true"
timeout_minutes: ${{ inputs.timeout_minutes }}
anthropic_api_key: ${{ inputs.anthropic_api_key }}
github_token: ${{ inputs.github_token }}
Loading
Loading