cogito
LLM-powered reasoning chains for Go.
What is cogito?
cogito provides a framework for building autonomous systems that reason and adapt. It implements a Thought-Note architecture where:
- Thought represents a reasoning context that accumulates information across pipeline steps
- Note captures atomic units of information as key-value pairs with metadata
Key Features
- Composable reasoning - Chain primitives like Decide, Analyze, Categorize into pipelines
- Context accumulation - Each step builds on previous reasoning
- Two-phase reasoning - Deterministic decisions with optional creative introspection
- Pipeline integration - Built on pipz for orchestration
- Observable - Emits capitan signals throughout execution
- Extensible - Implement custom primitives for domain-specific reasoning
When to Use cogito
cogito is ideal for:
- Customer support automation with context-aware routing
- Document analysis with semantic categorization
- Decision systems requiring audit trails
- Multi-step reasoning pipelines
Architecture
┌─────────────────────────────────────────────────────────┐
│ Pipeline │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ Analyze │──│ Decide │──│Categorize│──│ Assess │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
└─────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────┐
│ Thought │
│ ┌────────────────────────────────────────────────────┐ │
│ │ Notes: [input, analysis, decision, category, ...] │ │
│ │ Session: LLM conversation state │ │
│ └────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────┘
Next Steps
- Quickstart - Get started in 5 minutes
- Core Concepts - Understand Thought and Note
- Architecture - Deep dive into system design