noesium 0.1.0__tar.gz → 0.2.0__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.
Files changed (128) hide show
  1. {noesium-0.1.0 → noesium-0.2.0}/LICENSE +1 -1
  2. {noesium-0.1.0 → noesium-0.2.0}/PKG-INFO +56 -48
  3. {noesium-0.1.0 → noesium-0.2.0}/README.md +3 -24
  4. noesium-0.2.0/noesium/agents/askura_agent/__init__.py +22 -0
  5. noesium-0.2.0/noesium/agents/askura_agent/askura_agent.py +480 -0
  6. noesium-0.2.0/noesium/agents/askura_agent/conversation.py +164 -0
  7. noesium-0.2.0/noesium/agents/askura_agent/extractor.py +175 -0
  8. noesium-0.2.0/noesium/agents/askura_agent/memory.py +14 -0
  9. noesium-0.2.0/noesium/agents/askura_agent/models.py +239 -0
  10. noesium-0.2.0/noesium/agents/askura_agent/prompts.py +202 -0
  11. noesium-0.2.0/noesium/agents/askura_agent/reflection.py +234 -0
  12. noesium-0.2.0/noesium/agents/askura_agent/summarizer.py +30 -0
  13. noesium-0.2.0/noesium/agents/askura_agent/utils.py +6 -0
  14. noesium-0.2.0/noesium/agents/deep_research/__init__.py +13 -0
  15. noesium-0.2.0/noesium/agents/deep_research/agent.py +398 -0
  16. noesium-0.2.0/noesium/agents/deep_research/prompts.py +84 -0
  17. noesium-0.2.0/noesium/agents/deep_research/schemas.py +42 -0
  18. noesium-0.2.0/noesium/agents/deep_research/state.py +54 -0
  19. noesium-0.2.0/noesium/agents/search/__init__.py +5 -0
  20. noesium-0.2.0/noesium/agents/search/agent.py +474 -0
  21. noesium-0.2.0/noesium/agents/search/state.py +28 -0
  22. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/__init__.py +1 -1
  23. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/agent/base.py +10 -2
  24. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/goalith/decomposer/llm_decomposer.py +1 -1
  25. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/llm/__init__.py +1 -1
  26. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/llm/base.py +2 -2
  27. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/llm/litellm.py +42 -21
  28. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/llm/llamacpp.py +25 -4
  29. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/llm/ollama.py +43 -22
  30. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/llm/openai.py +25 -5
  31. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/llm/openrouter.py +1 -1
  32. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/toolify/base.py +9 -2
  33. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/toolify/config.py +2 -2
  34. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/toolify/registry.py +21 -5
  35. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/tracing/opik_tracing.py +7 -7
  36. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/vector_store/__init__.py +2 -2
  37. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/vector_store/base.py +1 -1
  38. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/vector_store/pgvector.py +10 -13
  39. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/vector_store/weaviate.py +2 -1
  40. noesium-0.2.0/noesium/toolkits/__init__.py +1 -0
  41. noesium-0.2.0/noesium/toolkits/arxiv_toolkit.py +310 -0
  42. noesium-0.2.0/noesium/toolkits/audio_aliyun_toolkit.py +441 -0
  43. noesium-0.2.0/noesium/toolkits/audio_toolkit.py +370 -0
  44. noesium-0.2.0/noesium/toolkits/bash_toolkit.py +332 -0
  45. noesium-0.2.0/noesium/toolkits/document_toolkit.py +454 -0
  46. noesium-0.2.0/noesium/toolkits/file_edit_toolkit.py +552 -0
  47. noesium-0.2.0/noesium/toolkits/github_toolkit.py +395 -0
  48. noesium-0.2.0/noesium/toolkits/gmail_toolkit.py +575 -0
  49. noesium-0.2.0/noesium/toolkits/image_toolkit.py +425 -0
  50. noesium-0.2.0/noesium/toolkits/memory_toolkit.py +398 -0
  51. noesium-0.2.0/noesium/toolkits/python_executor_toolkit.py +334 -0
  52. noesium-0.2.0/noesium/toolkits/search_toolkit.py +451 -0
  53. noesium-0.2.0/noesium/toolkits/serper_toolkit.py +623 -0
  54. noesium-0.2.0/noesium/toolkits/tabular_data_toolkit.py +537 -0
  55. noesium-0.2.0/noesium/toolkits/user_interaction_toolkit.py +365 -0
  56. noesium-0.2.0/noesium/toolkits/video_toolkit.py +168 -0
  57. noesium-0.2.0/noesium/toolkits/wikipedia_toolkit.py +420 -0
  58. {noesium-0.1.0 → noesium-0.2.0}/noesium.egg-info/PKG-INFO +56 -48
  59. {noesium-0.1.0 → noesium-0.2.0}/noesium.egg-info/SOURCES.txt +37 -1
  60. noesium-0.2.0/noesium.egg-info/requires.txt +79 -0
  61. {noesium-0.1.0 → noesium-0.2.0}/pyproject.toml +53 -28
  62. noesium-0.1.0/noesium.egg-info/requires.txt +0 -38
  63. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/agent/__init__.py +0 -0
  64. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/consts.py +0 -0
  65. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/goalith/conflict/conflict.py +0 -0
  66. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/goalith/conflict/detector.py +0 -0
  67. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/goalith/decomposer/__init__.py +0 -0
  68. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/goalith/decomposer/base.py +0 -0
  69. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/goalith/decomposer/callable_decomposer.py +0 -0
  70. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/goalith/decomposer/prompts.py +0 -0
  71. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/goalith/decomposer/simple_decomposer.py +0 -0
  72. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/goalith/errors.py +0 -0
  73. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/goalith/goalgraph/graph.py +0 -0
  74. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/goalith/goalgraph/node.py +0 -0
  75. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/goalith/replanner/base.py +0 -0
  76. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/goalith/replanner/replanner.py +0 -0
  77. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/goalith/service.py +0 -0
  78. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/llm/message.py +0 -0
  79. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/llm/prompt.py +0 -0
  80. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/__init__.py +0 -0
  81. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/base.py +0 -0
  82. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/__init__.py +0 -0
  83. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/config/__init__.py +0 -0
  84. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/config/activity/config.py +0 -0
  85. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/config/event/config.py +0 -0
  86. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/config/markdown_config.py +0 -0
  87. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/config/profile/config.py +0 -0
  88. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/llm_adapter.py +0 -0
  89. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/memory/__init__.py +0 -0
  90. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/memory/actions/__init__.py +0 -0
  91. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/memory/actions/add_activity_memory.py +0 -0
  92. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/memory/actions/base_action.py +0 -0
  93. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/memory/actions/cluster_memories.py +0 -0
  94. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/memory/actions/generate_suggestions.py +0 -0
  95. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/memory/actions/get_available_categories.py +0 -0
  96. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/memory/actions/link_related_memories.py +0 -0
  97. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/memory/actions/run_theory_of_mind.py +0 -0
  98. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/memory/actions/update_memory_with_suggestions.py +0 -0
  99. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/memory/embeddings.py +0 -0
  100. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/memory/file_manager.py +0 -0
  101. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/memory/memory_agent.py +0 -0
  102. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/memory/recall_agent.py +0 -0
  103. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/memu/memory_store.py +0 -0
  104. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/memory/models.py +0 -0
  105. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/msgbus/__init__.py +0 -0
  106. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/msgbus/base.py +0 -0
  107. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/orchestrix/__init__.py +0 -0
  108. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/py.typed +0 -0
  109. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/routing/__init__.py +0 -0
  110. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/routing/base.py +0 -0
  111. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/routing/router.py +0 -0
  112. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/routing/strategies/__init__.py +0 -0
  113. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/routing/strategies/dynamic_complexity.py +0 -0
  114. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/routing/strategies/self_assessment.py +0 -0
  115. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/routing/types.py +0 -0
  116. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/toolify/__init__.py +0 -0
  117. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/toolify/mcp_integration.py +0 -0
  118. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/toolify/toolkits/__init__.py +0 -0
  119. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/tracing/__init__.py +0 -0
  120. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/tracing/langgraph_hooks.py +0 -0
  121. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/tracing/token_tracker.py +0 -0
  122. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/utils/__init__.py +0 -0
  123. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/utils/logging.py +0 -0
  124. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/utils/statistics.py +0 -0
  125. {noesium-0.1.0 → noesium-0.2.0}/noesium/core/utils/typing.py +0 -0
  126. {noesium-0.1.0 → noesium-0.2.0}/noesium.egg-info/dependency_links.txt +0 -0
  127. {noesium-0.1.0 → noesium-0.2.0}/noesium.egg-info/top_level.txt +0 -0
  128. {noesium-0.1.0 → noesium-0.2.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2025 Xiaming Chen
3
+ Copyright (c) 2025, Mirasoth Inc.
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: noesium
3
- Version: 0.1.0
3
+ Version: 0.2.0
4
4
  Summary: Towards a cognitive agentic framework
5
5
  Author-email: Xiaming Chen <chenxm35@gmail.com>
6
6
  Maintainer-email: Xiaming Chen <chenxm35@gmail.com>
@@ -20,50 +20,79 @@ Description-Content-Type: text/markdown
20
20
  License-File: LICENSE
21
21
  Requires-Dist: pydantic>=2.0.0
22
22
  Requires-Dist: requests>=2.31.0
23
+ Requires-Dist: httpx>=0.28.1
24
+ Requires-Dist: aiohttp>=3.12.15
25
+ Requires-Dist: aiofiles>=24.1.0
26
+ Requires-Dist: anyio>=4.9.0
23
27
  Requires-Dist: python-dotenv>=1.1.1
24
28
  Requires-Dist: colorlog>=6.8.0
25
29
  Requires-Dist: typing-extensions>=4.8.0
26
30
  Requires-Dist: deprecated>=1.2.18
27
- Requires-Dist: bubus>=1.5.6
28
- Requires-Dist: openai>=1.0.0
29
- Requires-Dist: instructor>=1.10.0
30
- Requires-Dist: google-genai>=1.5.0
31
- Requires-Dist: litellm>=1.0.0
32
- Requires-Dist: ollama>=0.5.3
33
- Requires-Dist: huggingface-hub>=0.34.4
34
- Requires-Dist: llama-cpp-python>=0.3.16
35
- Requires-Dist: langchain-core>=0.3.72
36
- Requires-Dist: langchain-text-splitters>=0.3.0
37
- Requires-Dist: langchain-ollama>=0.2.0
38
- Requires-Dist: langgraph>=0.5.4
31
+ Requires-Dist: psutil>=7.0.0
39
32
  Requires-Dist: networkx>=3.5
40
- Requires-Dist: mcp>=1.0.0
41
- Requires-Dist: protobuf<6,>=5
42
- Requires-Dist: weaviate-client<5,>=4
43
- Requires-Dist: psycopg2>=2.9.10
44
- Requires-Dist: psycopg2-binary>=2.9.0
33
+ Requires-Dist: bubus>=1.5.6
34
+ Provides-Extra: openai
35
+ Requires-Dist: openai>=1.0.0; extra == "openai"
36
+ Requires-Dist: instructor>=1.10.0; extra == "openai"
37
+ Provides-Extra: google
38
+ Requires-Dist: google-genai>=1.5.0; extra == "google"
39
+ Requires-Dist: google-api-python-client>=2.174.0; extra == "google"
40
+ Requires-Dist: google-auth-oauthlib>=1.2.2; extra == "google"
41
+ Requires-Dist: google-auth>=2.40.3; extra == "google"
42
+ Provides-Extra: aliyun
43
+ Requires-Dist: aliyun-python-sdk-core<3.0.0,>=2.13.1; extra == "aliyun"
44
+ Provides-Extra: litellm
45
+ Requires-Dist: litellm>=1.0.0; extra == "litellm"
46
+ Provides-Extra: local-llm
47
+ Requires-Dist: ollama>=0.5.3; extra == "local-llm"
48
+ Requires-Dist: llama-cpp-python>=0.3.16; extra == "local-llm"
49
+ Requires-Dist: huggingface-hub>=0.34.4; extra == "local-llm"
50
+ Provides-Extra: langchain
51
+ Requires-Dist: langchain-core>=0.3.72; extra == "langchain"
52
+ Requires-Dist: langchain-text-splitters>=0.3.0; extra == "langchain"
53
+ Requires-Dist: langchain-ollama>=0.2.0; extra == "langchain"
54
+ Requires-Dist: langgraph>=0.5.4; extra == "langchain"
55
+ Provides-Extra: postgres
56
+ Requires-Dist: psycopg2-binary>=2.9.0; extra == "postgres"
57
+ Requires-Dist: psycopg2>=2.9.10; extra == "postgres"
58
+ Provides-Extra: weaviate
59
+ Requires-Dist: weaviate-client<5,>=4; extra == "weaviate"
60
+ Requires-Dist: protobuf<6,>=5; extra == "weaviate"
61
+ Provides-Extra: datascience
62
+ Requires-Dist: matplotlib>=3.8.0; extra == "datascience"
63
+ Requires-Dist: pexpect>=4.9.0; extra == "datascience"
64
+ Requires-Dist: ipython>=8.18.0; extra == "datascience"
65
+ Requires-Dist: pandas>=2.0.0; extra == "datascience"
66
+ Provides-Extra: mcp
67
+ Requires-Dist: mcp>=1.0.0; extra == "mcp"
68
+ Provides-Extra: tools
69
+ Requires-Dist: noesium[aliyun,datascience,google,mcp]; extra == "tools"
70
+ Requires-Dist: wizsearch<2.0.0,>=1.0.1; extra == "tools"
71
+ Requires-Dist: arxiv>=2.2.0; extra == "tools"
72
+ Requires-Dist: pillow<12.0,>=10.1.0; extra == "tools"
73
+ Requires-Dist: pymupdf>=1.23.0; extra == "tools"
74
+ Requires-Dist: openpyxl>=3.1.5; extra == "tools"
75
+ Requires-Dist: wikipedia-api>=0.6.0; extra == "tools"
76
+ Provides-Extra: all
77
+ Requires-Dist: noesium[google,langchain,local-llm,openai,postgres,tools,weaviate]; extra == "all"
45
78
  Provides-Extra: dev
46
79
  Requires-Dist: pytest<9,>=8.2; extra == "dev"
47
80
  Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
48
81
  Requires-Dist: pytest-asyncio>=1.1.0; extra == "dev"
49
- Requires-Dist: pytest-tornasync>=0.6.0.post2; extra == "dev"
50
- Requires-Dist: pytest-trio>=0.8.0; extra == "dev"
51
- Requires-Dist: pytest-twisted>=1.14.3; extra == "dev"
52
- Requires-Dist: twisted>=25.5.0; extra == "dev"
53
82
  Requires-Dist: black>=23.0.0; extra == "dev"
54
83
  Requires-Dist: isort>=5.12.0; extra == "dev"
55
- Requires-Dist: flake8>=7.3.0; extra == "dev"
84
+ Requires-Dist: mypy>=1.10.0; extra == "dev"
56
85
  Requires-Dist: autoflake>=2.3.1; extra == "dev"
57
- Requires-Dist: pillow>=11.3.0; extra == "dev"
86
+ Requires-Dist: flake8>=7.3.0; extra == "dev"
58
87
  Dynamic: license-file
59
88
 
60
- # Cogents-core
89
+ # Noesium-core
61
90
 
62
91
  [![CI](https://github.com/mirasoth/noesium/actions/workflows/ci.yml/badge.svg)](https://github.com/mirasoth/noesium/actions/workflows/ci.yml)
63
92
  [![PyPI version](https://img.shields.io/pypi/v/noesium.svg)](https://pypi.org/project/noesium/)
64
93
  [![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/mirasoth/noesium)
65
94
 
66
- This is part of [Project Cogents](https://www.xiaming.site/2025/08/30/project-cogents/), an initiative to develop a computation-driven, cognitive agentic system. This repo contains the foundational abstractions (Agent, Memory, Tool, Goal, Orchestration, and more) along with essential modules such as LLM clients, logging, message buses, model routing, and observability. For the underlying philosophy, refer to my talk on MAS ([link](https://github.com/mirasoth/mas-talk-2508/blob/master/mas-talk-xmingc.pdf)).
95
+ Project Noesium is an initiative to develop a computation-driven, cognitive agentic system. This repo contains the foundational abstractions (Agent, Memory, Tool, Goal, Orchestration, and more) along with essential modules such as LLM clients, logging, message buses, model routing, and observability. For the underlying philosophy, refer to my talk on MAS ([link](https://github.com/caesar0301/mas-talk-2508/blob/master/mas-talk-xmingc.pdf)).
67
96
 
68
97
  ## Installation
69
98
 
@@ -117,27 +146,6 @@ Noesium offers a comprehensive set of modules for creating intelligent agent-bas
117
146
  - **Opik integration**: Production-ready observability
118
147
  - **LangGraph hooks**: Workflow tracing and debugging
119
148
 
120
- ## Project Structure
121
-
122
- ```
123
- noesium/core/
124
- ├── agent/ # Base agent classes and models
125
- ├── goalith/ # Goal management and planning system
126
- │ ├── decomposer/ # Goal decomposition strategies
127
- │ ├── goalgraph/ # Graph data structures
128
- │ ├── conflict/ # Conflict detection
129
- │ └── replanner/ # Dynamic replanning
130
- ├── llm/ # LLM provider implementations
131
- ├── memory/ # Memory management system
132
- │ └── memu/ # MemU memory agent integration
133
- ├── toolify/ # Tool management and execution
134
- ├── vector_store/ # Vector database integrations
135
- ├── msgbus/ # Message bus system
136
- ├── routing/ # LLM routing strategies
137
- ├── tracing/ # Token tracking and observability
138
- └── utils/ # Utilities and logging
139
- ```
140
-
141
149
  ## Quick Start
142
150
 
143
151
  ### 1. LLM Client Usage
@@ -386,7 +394,7 @@ Set these environment variables for different providers:
386
394
 
387
395
  ```bash
388
396
  # Default LLM provider
389
- export COGENTS_LLM_PROVIDER="openai"
397
+ export NOESIUM_LLM_PROVIDER="openai"
390
398
 
391
399
  # OpenAI
392
400
  export OPENAI_API_KEY="sk-..."
@@ -1,10 +1,10 @@
1
- # Cogents-core
1
+ # Noesium-core
2
2
 
3
3
  [![CI](https://github.com/mirasoth/noesium/actions/workflows/ci.yml/badge.svg)](https://github.com/mirasoth/noesium/actions/workflows/ci.yml)
4
4
  [![PyPI version](https://img.shields.io/pypi/v/noesium.svg)](https://pypi.org/project/noesium/)
5
5
  [![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/mirasoth/noesium)
6
6
 
7
- This is part of [Project Cogents](https://www.xiaming.site/2025/08/30/project-cogents/), an initiative to develop a computation-driven, cognitive agentic system. This repo contains the foundational abstractions (Agent, Memory, Tool, Goal, Orchestration, and more) along with essential modules such as LLM clients, logging, message buses, model routing, and observability. For the underlying philosophy, refer to my talk on MAS ([link](https://github.com/mirasoth/mas-talk-2508/blob/master/mas-talk-xmingc.pdf)).
7
+ Project Noesium is an initiative to develop a computation-driven, cognitive agentic system. This repo contains the foundational abstractions (Agent, Memory, Tool, Goal, Orchestration, and more) along with essential modules such as LLM clients, logging, message buses, model routing, and observability. For the underlying philosophy, refer to my talk on MAS ([link](https://github.com/caesar0301/mas-talk-2508/blob/master/mas-talk-xmingc.pdf)).
8
8
 
9
9
  ## Installation
10
10
 
@@ -58,27 +58,6 @@ Noesium offers a comprehensive set of modules for creating intelligent agent-bas
58
58
  - **Opik integration**: Production-ready observability
59
59
  - **LangGraph hooks**: Workflow tracing and debugging
60
60
 
61
- ## Project Structure
62
-
63
- ```
64
- noesium/core/
65
- ├── agent/ # Base agent classes and models
66
- ├── goalith/ # Goal management and planning system
67
- │ ├── decomposer/ # Goal decomposition strategies
68
- │ ├── goalgraph/ # Graph data structures
69
- │ ├── conflict/ # Conflict detection
70
- │ └── replanner/ # Dynamic replanning
71
- ├── llm/ # LLM provider implementations
72
- ├── memory/ # Memory management system
73
- │ └── memu/ # MemU memory agent integration
74
- ├── toolify/ # Tool management and execution
75
- ├── vector_store/ # Vector database integrations
76
- ├── msgbus/ # Message bus system
77
- ├── routing/ # LLM routing strategies
78
- ├── tracing/ # Token tracking and observability
79
- └── utils/ # Utilities and logging
80
- ```
81
-
82
61
  ## Quick Start
83
62
 
84
63
  ### 1. LLM Client Usage
@@ -327,7 +306,7 @@ Set these environment variables for different providers:
327
306
 
328
307
  ```bash
329
308
  # Default LLM provider
330
- export COGENTS_LLM_PROVIDER="openai"
309
+ export NOESIUM_LLM_PROVIDER="openai"
331
310
 
332
311
  # OpenAI
333
312
  export OPENAI_API_KEY="sk-..."
@@ -0,0 +1,22 @@
1
+ """
2
+ AskuraAgent - A general-purpose dynamic conversation agent.
3
+
4
+ AskuraAgent provides a flexible, configurable framework for human-in-the-loop
5
+ conversations that adapt to different user communication styles and dynamically
6
+ collect required information through natural conversation flow.
7
+ """
8
+
9
+ from .askura_agent import AskuraAgent
10
+ from .conversation import ConversationManager
11
+ from .extractor import InformationExtractor
12
+ from .models import AskuraConfig, AskuraResponse, AskuraState, InformationSlot
13
+
14
+ __all__ = [
15
+ "AskuraAgent",
16
+ "AskuraConfig",
17
+ "AskuraState",
18
+ "AskuraResponse",
19
+ "ConversationManager",
20
+ "InformationExtractor",
21
+ "InformationSlot",
22
+ ]