flowcraft  by GizClaw

Go SDK for building production-grade AI agents

Created 1 month ago
399 stars

Top 72.3% on SourcePulse

GitHubView on GitHub
Project Summary

FlowCraft is a production-grade Go SDK designed for building AI agents with advanced capabilities like long-term memory, knowledge retrieval, and voice integration. It targets Go developers seeking a robust, layered toolkit to ship LLM applications efficiently, offering flexibility as a library, standalone daemon, or real-time pipeline, and simplifying multi-provider LLM integration.

How It Works

FlowCraft employs a layered, modular architecture, allowing developers to integrate only the necessary components. The core sdk provides primitives like agents, DAG executors, LLM contracts, and tools. The memory module offers sophisticated long-term recall using hybrid retrieval (BM25, vector, entity) with Reciprocal Rank Fusion and predicate normalization. sdkx provides drop-in providers for various LLM APIs and embedding models. vessel acts as an in-process runtime for agents, while vesseld is a standalone daemon for declarative deployment. The voice module handles real-time STT-LLM-TTS pipelines with features like VAD and barge-in. This design emphasizes strict separation of concerns and provider portability.

Quick Start & Requirements

To run the vesseld daemon, install it via go install github.com/GizClaw/flowcraft/cmd/vesseld@latest and then execute vesseld run --config <path>. For library usage, integrate the Go modules directly into your project. Requires Go 1.25+. Refer to the examples/ directory for runnable end-to-end use cases, including multi-vessel daemon configurations and voice pipelines.

Highlighted Details

  • Hybrid Memory Retrieval: Features BM25, vector, and entity retrieval fused via Reciprocal Rank Fusion (K=60), with predicate alias normalization for flexible querying.
  • Durable & Resumable Execution: Supports streaming, checkpointing, and pausing/resuming agents across restarts via sdk/engine and CheckpointStore.
  • Declarative Daemon (vesseld): Manages multiple agent vessels from YAML, offering an HTTP/SSE control plane, shared LLM clients, and rate limits.
  • Integrated Voice Pipeline: Provides real-time STT → LLM → TTS with VAD, endpointing, barge-in, and WebRTC support, compatible with any sdkx STT/TTS backend.
  • Multi-Agent Delegation: sdk/kanban allows agents to be exposed as tools to other agents, enabling composition via function calls.

Maintenance & Community

The project utilizes GitHub Actions for CI and has a Go Report Card badge indicating code quality. Specific community channels (e.g., Discord, Slack) or detailed roadmap information beyond module versioning are not explicitly detailed in the README.

Licensing & Compatibility

The project is licensed under the MIT license. This permissive license allows for commercial use and integration into closed-source applications without significant restrictions.

Limitations & Caveats

The memory module is published but not yet at v1.0.0, and the vessel runtime is at v0.3.0, indicating ongoing development. The current memory model focuses on retrieving facts, with future work planned for an assertion-graph model to retrieve linked evidence. vesseld is production-ready for single-node deployments. API stability is managed via SemVer per module, with breaking changes potentially occurring in minor version bumps until modules reach v1.0.0.

Health Check
Last Commit

19 hours ago

Responsiveness

Inactive

Pull Requests (30d)
56
Issues (30d)
32
Star History
404 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.