Skip to main content

Towards a cognitive agentic framework

Project description

Cogents-core

CI PyPI version Ask DeepWiki

This is part of project Cogents, an initiative to develop a cognitive, computation-driven agentic system. This repo 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).

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.10.tar.gz (77.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.10-py3-none-any.whl (104.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cogents_core-0.1.10.tar.gz
  • Upload date:
  • Size: 77.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cogents_core-0.1.10.tar.gz
Algorithm Hash digest
SHA256 19672dcd39237ff9952a7cf2d5ea3edf4154f59f630286e9f47810a541766b8c
MD5 fac2c5b3380e0a4269db43f1bed1ca88
BLAKE2b-256 0d7283b193084c2f1edb24d950545ba7b71958c4093e5347158f2820b5b4056c

See more details on using hashes here.

Provenance

The following attestation bundles were made for cogents_core-0.1.10.tar.gz:

Publisher: release.yml on mirasurf/cogents-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

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

File metadata

  • Download URL: cogents_core-0.1.10-py3-none-any.whl
  • Upload date:
  • Size: 104.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cogents_core-0.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 6b74ae52b006000b7096c9e5c3a5caae74eb34bc4bf9d39b1c401efa37e80c16
MD5 edfbd989fa18432dfdbacdace102e093
BLAKE2b-256 7b37078c4bd973ac77365434be6f7775120c07cc5b85f2722f10e9a55b9691f8

See more details on using hashes here.

Provenance

The following attestation bundles were made for cogents_core-0.1.10-py3-none-any.whl:

Publisher: release.yml on mirasurf/cogents-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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