https://github.com/yarenty/kowalski
High performance Rust based AI Agent.
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.7%) to scientific vocabulary
Keywords
Repository
High performance Rust based AI Agent.
Statistics
- Stars: 12
- Watchers: 1
- Forks: 0
- Open Issues: 13
- Releases: 5
Topics
Metadata Files
README.md
Kowalski
"AI agents are like pets – they're cute, but they make a mess."
"The future is modular, and so is Kowalski. Want a feature? Open an issue or submit a PR!"
A sophisticated Rust-based multi-agent framework for interacting with various LLM providers, with built-in support for federation, secure multi-party computation, and extensible tooling architecture.
🌟 Vision & Architecture
Kowalski is designed as a foundational framework for building intelligent, distributed agent systems that can collaborate securely and efficiently. The architecture supports both standalone operation and federated deployments with advanced privacy-preserving capabilities.

kowalski/
├── kowalski-core/ # Core agent abstractions, conversation, roles, config, toolchain
├── kowalski-tools/ # Pluggable tools (code, data, web, document, etc.)
├── kowalski-agent-template/ # Agent builder, base agent, and templates
├── kowalski-federation/ # Multi-agent orchestration (WIP)
├── kowalski-academic-agent/ # Academic research agent
├── kowalski-code-agent/ # Code analysis agent
├── kowalski-data-agent/ # Data analysis agent
├── kowalski-web-agent/ # Web research agent
├── kowalski-cli/ # Command-line interface
├── resources/ # Configs, tokenizer, etc.
└── ... # Examples, docs, etc.
📦 Module Overview
kowalski-core
- Foundational types, agent abstractions, conversation, roles, configuration, error handling, toolchain logic.
- Designed for extensibility and async-first operation.
- See details
kowalski-tools
- Pluggable tools for code, data, web, and document analysis.
- Includes CSV, code (Java/Python/Rust), web search, web scraping, PDF tools, and more.
- Upcoming: Will be refactored into even more granular, independent tool modules for easier extension and maintenance.
- See details
kowalski-agent-template
- Agent builder, base agent, and ready-to-use templates (general, research, etc.).
- Makes it easy to compose new agents with custom tools and prompts.
- See details
kowalski-federation
- Work in Progress: Multi-agent orchestration, registry, and protocols.
- Current focus: agent registration, task delegation, message passing.
- Decisions to make: Protocol selection (A2A, ACP, MCP, or custom), security, scalability, and extensibility.
- See details
Specific Agents
- kowalski-academic-agent: Academic research, PDF analysis, citation extraction.
- kowalski-code-agent: Code analysis, metrics, suggestions for Java/Python/Rust.
- kowalski-data-agent: Data/CSV analysis, statistics, summaries.
- kowalski-web-agent: Web search, scraping, and research.
- Each agent is a separate crate with its own README and examples.
🚀 Installation & Setup
"Installation is like cooking – it's easy until you burn something." – A Frustrated Developer
1. Prerequisites
- Rust (latest stable, install via rustup.rs)
- Ollama (for local LLMs, e.g., llama3.2)
- (Optional) Other LLM providers (OpenAI, etc.)
2. Clone & Build
bash
git clone https://github.com/yarenty/kowalski.git
cd kowalski
cargo build --release
3. Install & Run Ollama
```bash
Install Ollama (see https://ollama.com/download)
ollama serve &
Download a model (llama3.2 runs on CPU)
ollama pull llama3.2 ```
4. Run Kowalski
```bash cargo run --release --bin kowalski-cli
Or use the CLI directly after building
./target/release/kowalski chat "Hello, world!" ```
🛠️ Usage
CLI Examples
```bash
Chat with an LLM
kowalski chat "What's the best way to learn Rust?"
Analyze a PDF
kowalski academic --file research.pdf
Web search
kowalski tool search "rust async programming"
Code analysis
kowalski tool code ./src/main.rs ```
Rust API Example
rust
use kowalski_core::{Agent, BaseAgent, Config};
let config = Config::default();
let mut agent = BaseAgent::new(config, "Demo Agent", "A test agent").await?;
let conv_id = agent.start_conversation("llama3.2");
agent.add_message(&conv_id, "user", "Hello, world!").await;
🤖 Existing Agents & How to Run
Academic Agent
- Location:
kowalski-academic-agent/ - Run:
bash cargo run --release --bin kowalski-academic-agent -- --file paper.pdf - Features: PDF analysis, citation extraction, academic summarization.
Code Agent
- Location:
kowalski-code-agent/ - Run:
bash cargo run --release --bin kowalski-code-agent -- --file main.rs - Features: Code metrics, suggestions, multi-language support.
Data Agent
- Location:
kowalski-data-agent/ - Run:
```bash cargo run --release
create data chat data-agent using csv tool could you investigate content and give me insight about domain_structure.csv file? ``` - Features: CSV analysis, statistics, summaries.
Web Agent
- Location:
kowalski-web-agent/ - Run:
bash cargo run --release --bin kowalski-web-agent -- --query "latest AI news" Features: Web search, scraping, summarization.
See each agent's README for more details and output examples.
📖 Documentation & Links
🤝 Contributing
"Contributing is like dating – it's fun until someone suggests changes." – An Open Source Maintainer
- PRs, issues, and feature requests are welcome!
- Please add tests and update docs.
- See CONTRIBUTING.md if available.
📝 License
"Licenses are like prenuptial agreements – they're boring until you need them." – A Lawyer
MIT License. See LICENSE.
🙏 Acknowledgments
"Acknowledgments are like thank you notes – they're nice but nobody reads them." – A Grateful Developer
- Thanks to the Ollama team and all open source contributors.
- Thanks to my coffee machine for keeping me awake during development.
- Thanks to everyone who opens an issue, even if it's just to say "it doesn't work".
📈 Activity
For the latest features, roadmap, and future plans, see ROADMAP.md.
Owner
- Name: Jaroslaw Nowosad
- Login: yarenty
- Kind: user
- Location: Ireland
- Company: SkyCorp Limited
- Website: http://www.yarenty.com
- Twitter: yarenty
- Repositories: 16
- Profile: https://github.com/yarenty
GitHub Events
Total
- Create event: 7
- Issues event: 19
- Release event: 3
- Watch event: 15
- Issue comment event: 2
- Push event: 77
- Gollum event: 1
- Pull request event: 6
Last Year
- Create event: 7
- Issues event: 19
- Release event: 3
- Watch event: 15
- Issue comment event: 2
- Push event: 77
- Gollum event: 1
- Pull request event: 6
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 16
- Total pull requests: 8
- Average time to close issues: 1 day
- Average time to close pull requests: 7 minutes
- Total issue authors: 1
- Total pull request authors: 1
- Average comments per issue: 0.13
- Average comments per pull request: 0.0
- Merged pull requests: 8
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 16
- Pull requests: 8
- Average time to close issues: 1 day
- Average time to close pull requests: 7 minutes
- Issue authors: 1
- Pull request authors: 1
- Average comments per issue: 0.13
- Average comments per pull request: 0.0
- Merged pull requests: 8
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- yarenty (16)
Pull Request Authors
- yarenty (12)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 10
-
Total downloads:
- cargo 4,555 total
-
Total dependent packages: 0
(may contain duplicates) -
Total dependent repositories: 0
(may contain duplicates) - Total versions: 12
- Total maintainers: 1
crates.io: kowalski-tools
Kowalski Tooling: A Rust-based agent for interacting with Ollama models
- Homepage: https://github.com/yarenty/kowalski
- Documentation: https://docs.rs/kowalski-tools/
- License: MIT
-
Latest release: 0.5.0
published 8 months ago
Rankings
Maintainers (1)
crates.io: kowalski-agent-template
Kowalski Template of Agent: A Rust-based agent for interacting with Ollama models
- Homepage: https://github.com/yarenty/kowalski
- Documentation: https://docs.rs/kowalski-agent-template/
- License: MIT
-
Latest release: 0.5.0
published 8 months ago
Rankings
Maintainers (1)
crates.io: kowalski-web-agent
Kowalski Web Agent: A Rust-based agent for interacting with Ollama models
- Homepage: https://github.com/yarenty/kowalski
- Documentation: https://docs.rs/kowalski-web-agent/
- License: MIT
-
Latest release: 0.5.0
published 8 months ago
Rankings
Maintainers (1)
crates.io: kowalski-code-agent
Kowalski Code Agent: A Rust-based agent for interacting with Ollama models
- Homepage: https://github.com/yarenty/kowalski
- Documentation: https://docs.rs/kowalski-code-agent/
- License: MIT
-
Latest release: 0.5.0
published 8 months ago
Rankings
Maintainers (1)
crates.io: kowalski-cli
Kowalski CLI Interface: A Rust-based agent for interacting with Ollama models
- Homepage: https://github.com/yarenty/kowalski
- Documentation: https://docs.rs/kowalski-cli/
- License: MIT
-
Latest release: 0.5.0
published 8 months ago
Rankings
Maintainers (1)
crates.io: kowalski-federation
Kowalski Federation: A Rust-based agent for interacting with Ollama models
- Homepage: https://github.com/yarenty/kowalski
- Documentation: https://docs.rs/kowalski-federation/
- License: MIT
-
Latest release: 0.5.0
published 8 months ago
Rankings
Maintainers (1)
crates.io: kowalski-data-agent
Kowalski Date Agent: A Rust-based agent for interacting with Ollama models
- Homepage: https://github.com/yarenty/kowalski
- Documentation: https://docs.rs/kowalski-data-agent/
- License: MIT
-
Latest release: 0.5.0
published 8 months ago
Rankings
Maintainers (1)
crates.io: kowalski-academic-agent
Kowalski Academic Agent: A Rust-based agent for interacting with Ollama models
- Homepage: https://github.com/yarenty/kowalski
- Documentation: https://docs.rs/kowalski-academic-agent/
- License: MIT
-
Latest release: 0.5.0
published 8 months ago
Rankings
Maintainers (1)
crates.io: kowalski-core
Kowalski Core Module: A Rust-based agent for interacting with Ollama models
- Homepage: https://github.com/yarenty/kowalski
- Documentation: https://docs.rs/kowalski-core/
- License: MIT
-
Latest release: 0.5.0
published 8 months ago
Rankings
Maintainers (1)
crates.io: kowalski
Kowalski: A Rust-based agent for interacting with Ollama models
- Homepage: https://github.com/yarenty/kowalski
- Documentation: https://docs.rs/kowalski/
- License: MIT
-
Latest release: 0.5.0
published 8 months ago