Book Discovery

Finds books related to a theme across three categories: similar domains, inspiring works, and expressive fiction. Downloads and processes books to provide summaries.

The workflow:

  1. Generates book recommendations in three parallel tracks
  2. Searches for and validates book availability
  3. Acquires and processes books (PDF download, conversion)
  4. Synthesizes findings into a categorized report

When to Use This

This workflow is intended for discovering books that illuminate a theme from multiple angles—not just direct matches, but conceptually adjacent and creatively relevant works.

For academic papers, use Literature Review. For general web research, use Web Research.

How It Works

flowchart TD
    subgraph recommend["1. Generate Recommendations"]
        A[Your Theme] --> B[Analogous Domain]
        A --> C[Inspiring Action]
        A --> D[Expressive Fiction]
    end

    subgraph search["2. Search & Validate"]
        B --> E[Search Book Sources]
        C --> E
        D --> E
        E --> F[Validate Availability]
    end

    subgraph process["3. Process Books"]
        F --> G[Download PDFs]
        G --> H[Convert to Markdown]
        H --> I[Generate Summaries]
    end

    subgraph output["4. Synthesize"]
        I --> J[Organize by Category]
        J --> K[Write Descriptions]
    end

    K --> L[Your Book Report]

    style recommend fill:#e8f4f8
    style search fill:#f0f8e8
    style process fill:#fff8e8
    style output fill:#f8e8f4

The Steps Explained

1. Generate Recommendations Three parallel processes generate book recommendations:

  • Analogous Domain: Books addressing similar challenges in different fields (e.g., for “organizational resilience” → books on ecosystem resilience, immune systems)
  • Inspiring Action: Books that motivate change or transformation related to the theme
  • Expressive Fiction: Novels or creative works that capture the theme’s essence

2. Search & Validate Searches multiple book sources with fallback strategies. Validates that books are actually available and match the recommendations.

3. Process Books Downloads available books, converts PDFs to readable markdown, and generates summaries for each.

4. Synthesize Organizes findings by category and writes descriptions explaining why each book is relevant to the theme.

Inputs

InputDescriptionExample
ThemeConcept or topic to explore”Organizational resilience”
Brief (optional)Context to guide recommendations”Looking at how companies recover from crises”
ThoroughnessBooks per category (see below)“Standard” for most cases
Language (optional)Preferred language for books”en” for English

Outputs

OutputDescription
ReportCategorized book recommendations with summaries
StatusSuccess, partial, or failed
Source countNumber of books processed

Thoroughness Settings

SettingBooks per CategoryIntended Use
Test1Testing the system
Quick2Quick recommendations
Standard3General exploration
Comprehensive5Broader coverage
High Quality7Extensive survey

The Three Categories

Analogous Domain Books that tackle similar problems in unrelated fields. Useful for cross-pollinating ideas and finding unexpected solutions.

Inspiring Action Books known for motivating readers to act or change. Practical, transformative works that energize rather than just inform.

Expressive Fiction Novels, stories, or creative non-fiction that embody the theme emotionally or narratively. Useful for deeper understanding beyond analytical treatment.

Example

Input:

  • Theme: “Building learning organizations”
  • Brief: “Interested in how companies can continuously adapt and improve”
  • Thoroughness: Standard

Typical output: 9 books total (3 per category):

  • Analogous: Books on adaptive systems, evolutionary biology, jazz improvisation
  • Inspiring: Classic management books on learning, growth mindset works
  • Fiction: Novels featuring organizations that transform or adapt

Developer Reference

Entry point: workflows/research/book_finding/graph/api.py — exposes book_finding() function

Graph construction: workflows/research/book_finding/graph/construction.py — parallel recommendation generation, sequential processing

State: workflows/research/book_finding/state.pyBookFindingState

Nodes: workflows/research/book_finding/nodes/

  • generate_recommendations.py — three parallel generators (analogous, inspiring, expressive)
  • search_books.py — multi-source book search with fallback
  • process_books.py — PDF acquisition and document processing
  • synthesize_output.py — final report assembly

Prompts: workflows/research/book_finding/prompts.py — recommendation generation prompts

Document processing: workflows/research/book_finding/document_processing.py — book-specific PDF handling