Skip to content

A conversational form-filling agent built with eino

License

Notifications You must be signed in to change notification settings

tbxark/formagent

Repository files navigation

FormAgent

A conversational form-filling agent built with CloudWeGo Eino, implementing intelligent form orchestration through natural language interactions.

Overview

FormAgent is a Go library that enables building conversational form-filling experiences powered by Large Language Models (LLMs). It leverages Eino's component-based architecture and orchestration capabilities to manage complex form workflows through natural dialogue.

Key Features

  • Conversational Interface: Users fill forms through natural language instead of traditional form fields
  • Intelligent Field Extraction: Automatically extracts and validates form data from user input
  • Multi-Phase Workflow: Supports collecting, confirming, and submitting phases
  • State Management: Built-in checkpoint/restore capabilities for resuming conversations
  • Type-Safe: Leverages Go generics for compile-time type safety
  • Extensible: Customizable parsers, validators, and submission handlers

Architecture

FormAgent is built on Eino's orchestration framework, treating components as first-class citizens:

  • PatchGenerator: Extracts structured data from user input using RFC 6902 JSON Patch
  • DialogueGenerator: Generates contextual responses based on form state
  • CommandParser: Recognizes user commands (confirm, cancel, back)
  • FormSpec: Defines form schema, validation rules, and submission logic

Design Philosophy

FormAgent follows Eino's orchestration principles:

  • Component-First: Business logic encapsulated in reusable components
  • Clear Separation: Orchestration layer separate from business logic
  • Type Safety: Leverages Go's type system for compile-time guarantees
  • Extensibility: Easy to customize and extend for specific use cases

References

License

This project is licensed under the MIT License. See the LICENSE file for details.

About

A conversational form-filling agent built with eino

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published