Skip to main content

Towards a cognitive agentic framework

Project description

Cogents

CI PyPI version Ask DeepWiki

A comprehensive collection of essential building blocks for constructing cognitive multi-agent systems (MAS). Rather than building a full agent framework, Cogents provides a lightweight repository of key components designed to bridge the final mile in MAS development. Our philosophy focuses on modular, composable components that can be easily integrated into existing systems or used to build new ones from the ground up. For the underlying philosophy, refer to my talk on MAS (link).

Core Modules

Cogents offers a comprehensive set of modules for creating intelligent agent-based applications:

LLM Integration & Management

  • Multi-model support: OpenAI, Google GenAI (via OpenRouter), Ollama, and LlamaCPP
  • Advanced routing: Dynamic complexity-based and self-assessment routing strategies
  • Tracing & monitoring: Built-in token tracking and Opik tracing integration
  • Extensible architecture: Easy to add new LLM providers

Goal Management & Planning

  • Goal decomposition: LLM-based and callable goal decomposition strategies
  • Conflict detection: Automated goal conflict identification and resolution
  • Replanning: Dynamic goal replanning capabilities

Tool Management

  • Tool registry: Centralized tool registration and management
  • Execution engine: Robust tool execution with error handling
  • Repository system: Organized tool storage and retrieval

Memory Management

  • Under development

Orchestration

  • Under development

Project Structure

cogents/core
├── base/            # Base classes and models
├── goalith/         # Goal management and planning
├── memory/          # Memory management (on plan)
├── orchestrix/      # Global orchestration (on plan)
└── toolify/         # Tool management and execution

Creating a New Agent

From Base Classes

Start with the base agent classes in cogents.core.base to create custom agents with full control over behavior and capabilities.

Base Agent Class Hierarchy

BaseAgent (abstract)
├── Core functionality
│   ├── LLM client management
│   ├── Token usage tracking
│   ├── Logging capabilities
│   └── Configuration management
│
├── BaseGraphicAgent (abstract)
│   ├── LangGraph integration
│   ├── State management
│   ├── Graph visualization
│   └── Error handling patterns
│   │
│   ├── BaseConversationAgent (abstract)
│   │   ├── Session management
│   │   ├── Message handling
│   │   ├── Conversation state
│   │   └── Response generation
│   │
│   └── BaseResearcher (abstract)
│       ├── Research workflow
│       ├── Source management
│       ├── Query generation
│       └── Result compilation
│           └── Uses ResearchOutput model
│               ├── content: str
│               ├── sources: List[Dict]
│               ├── summary: str
│               └── timestamp: datetime

Key Inheritance Paths:

  • BaseAgent: Core functionality (LLM client, token tracking, logging)
  • BaseGraphicAgent: LangGraph integration and visualization
  • BaseConversationAgent: Session management and conversation patterns
  • BaseResearcher: Research workflow and structured output patterns

From Existing Agents

Use well-constructed agents like Seekra Agent as templates:

from cogents.core.agents.seekra_agent import SeekraAgent

# Extend Seekra Agent for custom research tasks
class CustomResearchAgent(SeekraAgent):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        # Add custom functionality
        
    def custom_research_method(self):
        # Implement custom research logic
        pass

Install

pip install -U cogents-core

License

MIT License - see LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cogents_core-0.1.1.tar.gz (64.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cogents_core-0.1.1-py3-none-any.whl (93.5 kB view details)

Uploaded Python 3

File details

Details for the file cogents_core-0.1.1.tar.gz.

File metadata

  • Download URL: cogents_core-0.1.1.tar.gz
  • Upload date:
  • Size: 64.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.11.11 Darwin/24.6.0

File hashes

Hashes for cogents_core-0.1.1.tar.gz
Algorithm Hash digest
SHA256 35bf68ffb79cee2676dc5f037327d3389fe38e14a82691de6e6d4887b864b573
MD5 831c29c14bb3ff86e7efb1f77c93b84d
BLAKE2b-256 c64a4872269ef977590cf0036e6d8b2d62f6e91d02b94272254e6d7e0fdde439

See more details on using hashes here.

File details

Details for the file cogents_core-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: cogents_core-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 93.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.11.11 Darwin/24.6.0

File hashes

Hashes for cogents_core-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b512400e53c295ca7ca53943da5e7cd3cfb1ca6c79b7b336b7e888dd72a1157a
MD5 4f1ff158fc5a8c8dd565bb90d80e527e
BLAKE2b-256 11e9ab8376cf522e5811c0bab9f616ede632e8526f310469b2e1fa8eb9e79b95

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page