Skip to main content

Agentic toolkit for COGENTS

Project description

CogentsSmith

CI PyPI version Ask DeepWiki

This is part of project COGENTS, an initiative to develop a cognitive, computation-driven agentic system. This repo is built upon cogents-core and hosts an extensive and extendable list of integrated services, well-tested toolkits, and ready-to-go agents. Our philosophy focuses on a modular, composable design that can be easily integrated into existing systems or used to build new ones from the ground up.

🎯 Core Capabilities

Cogents-smith has evolved into a mature, production-ready toolkit ecosystem featuring semantic organization. The project now offers 18 specialized toolkits organized into 10 semantic groups, providing comprehensive coverage for cognitive agent development, plus 1 production-ready agent for specialized tasks.

Toolkit Ecosystem (18 Tools)

  • Academic Research: arXiv integration for paper discovery and analysis
  • Development Tools: Bash execution, file editing, GitHub integration, Python execution
  • Media Processing: Image analysis, video processing, audio transcription
  • Information Retrieval: Wikipedia, web search, and knowledge extraction
  • Data Management: Tabular data processing, memory systems, document handling
  • Communication: Gmail integration for email management
  • Human Interaction: User communication and feedback collection systems

Ready-to-Use Agents

  • Askura Agent: Dynamic conversational agent for collecting structured information through natural dialogue
  • Seekra Agent: Deep research agent for comprehensive topic investigation and report generation

Architecture & Performance

  • Lazy Loading: Only load what you need, when you need it
  • Semantic Organization: Intuitive grouping reduces cognitive overhead
  • Async-First Design: Built for high-performance concurrent operations
  • Extensible Registry: Easy integration of custom tools and capabilities
  • Error Resilience: Graceful handling of missing dependencies and failures

📦 Semantic Organization

Cogents-smith features semantic organization that makes it easy to find and use related toolkits:

  • 🎯 Organized structure: Toolkits grouped by functionality
  • 📦 Group-wise loading: Import semantic groups of related toolkits
  • 🔧 Easy discovery: Simple group-based API

Available Toolkit Groups

Group Description Toolkits
academic Academic research tools arxiv_toolkit
audio Audio processing audio_toolkit, audio_aliyun_toolkit
communication Communication & messaging gmail_toolkit
development Development tools bash_toolkit, file_edit_toolkit, github_toolkit, python_executor_toolkit, tabular_data_toolkit
file_processing File manipulation document_toolkit, file_edit_toolkit, tabular_data_toolkit
hitl Human-in-the-loop user_interaction_toolkit
image Image processing image_toolkit
info_retrieval Information search search_toolkit, serper_toolkit, wikipedia_toolkit
memorization Data storage & memory memory_toolkit
video Video processing video_toolkit

Install

pip install -U cogents-smith

🚀 Quick Examples

Group Loading

import cogents_smith

# Get available groups
print(f"Available groups: {cogents_smith.get_available_groups()}")

# Load specific group
dev_toolkits = cogents_smith.load_toolkit_group('development')

# Or use semantic group imports
from cogents_smith.groups import development, info_retrieval

# Access toolkits from groups
bash = development().bash_toolkit()
search = info_retrieval().search_toolkit()

Using Askura Agent (Conversational Data Collection)

from cogents_smith.agents.askura_agent import AskuraAgent
from cogents_smith.agents.askura_agent.models import AskuraConfig, InformationSlot

# Define what information you want to collect
config = AskuraConfig(
    information_slots=[
        InformationSlot(
            name="trip_info",
            description="Travel plan details: destination, dates, interests",
            priority=5,
            required=True
        )
    ],
    conversation_purpose=["collect user information about planned trip"]
)

# Start conversation
agent = AskuraAgent(config=config)
response = agent.start_conversation(
    user_id="user123",
    initial_message="I want to plan a trip"
)

Using Seekra Agent (Deep Research)

from cogents_smith.agents.seekra_agent import SeekraAgent, Configuration

# Initialize research agent
researcher = SeekraAgent(
    configuration=Configuration(
        search_engine="tavily",
        number_of_initial_queries=2,
        max_research_loops=2
    )
)

# Conduct research
result = researcher.research(
    user_message="Deep learning trends in 2025"
)

print(result.summary)
print(f"Sources: {len(result.sources)}")

📚 Demo Scripts

Explore the capabilities with our comprehensive demo scripts:

🤖 Agents

Askura Agent

A dynamic conversational agent designed for structured information collection through natural dialogue. Askura adapts to user communication styles and maintains conversation purpose alignment.

Key Features:

  • Structured information slot collection
  • Adaptive conversation flow
  • Memory and context management
  • Reflection and summarization capabilities
  • Token usage tracking

Use Cases: User interviews, data collection, form filling, customer onboarding

Seekra Agent

A deep research agent that conducts comprehensive investigations on given topics, generating detailed reports with source citations.

Key Features:

  • Multi-source web research
  • Iterative research loops for depth
  • Automatic query generation
  • Source citation and aggregation
  • Configurable search engines (Tavily, etc.)

Use Cases: Market research, academic literature reviews, competitive analysis, knowledge synthesis

Best Practices

  1. Use group imports for related functionality to keep dependencies organized
  2. Use semantic groups to discover and access toolkits intuitively
  3. Leverage async capabilities for better performance in concurrent operations
  4. Check the demos to understand agent capabilities and performance characteristics
  5. Use lazy loading to minimize startup time and memory footprint

License

MIT License - see LICENSE file for details.

Acknowledgment

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_smith-0.2.1.tar.gz (94.2 kB view details)

Uploaded Source

Built Distribution

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

cogents_smith-0.2.1-py3-none-any.whl (114.8 kB view details)

Uploaded Python 3

File details

Details for the file cogents_smith-0.2.1.tar.gz.

File metadata

  • Download URL: cogents_smith-0.2.1.tar.gz
  • Upload date:
  • Size: 94.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.17

File hashes

Hashes for cogents_smith-0.2.1.tar.gz
Algorithm Hash digest
SHA256 398fdf249ca3fb45d3eb633df403d49e8d2de0d9c1caf8fe6b32e69c3e32a1b3
MD5 1624e6dca19881f8ff04e1127148c88a
BLAKE2b-256 314622eb242d8ea642d65de2e18708965754c1dd34eff56987f307770f640b20

See more details on using hashes here.

File details

Details for the file cogents_smith-0.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for cogents_smith-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 6e2a7cab75a6bd823734989010a78e526b86f17339c89acff5a8cdd463c19022
MD5 44bb976fe76bfa278b6caddc1a67ae3d
BLAKE2b-256 ccf5ece906218cc9d8ef552ab46f0e48d30570e43d37a241afd96a2ea28f243a

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