← all repositories
typedef-ai/fenic

A DataFrame layer that stops agents drowning in their own context

fenic offloads inference-heavy context work into a declarative DataFrame pipeline, then serves the results to any agent framework as bounded, typed tools.

542 stars Python AgentsLLMOps · Eval
fenic
Not currently ranked — collecting fresh signals.
star history

What it does

fenic acts as a pre-processing layer between raw data and your agent. You feed it sources like PDFs or chat logs, then use a DataFrame-style API to apply deterministic filters alongside semantic transforms—parsing, embedding, structured extraction, summarization—to build typed tables. These tables are exposed to agents as narrow MCP tools or Python functions, so the runtime receives small, precise rows instead of raw documents or bloated conversation histories.

The interesting bit

The project treats context engineering as a data pipeline rather than a prompt-hacking exercise. By wrapping LLM-powered operations in declarative DataFrame operations, it moves token-heavy work out of the agent’s context window, letting the agent spend its limited attention on reasoning instead of data janitoring.

Key highlights

  • Mixes deterministic SQL-like ops (filter, join, unnest) with semantic primitives (semantic.extract, semantic.embed, semantic.parse_pdf) in one composable flow.
  • Framework-agnostic output: serves shaped context via MCP servers or direct Python functions to LangGraph, PydanticAI, CrewAI, or anything else.
  • Inference offloading: LLM calls for summarization, extraction, and embedding happen outside the agent’s prompt, reducing context bloat.
  • Built-in memory patterns: curated facts, profile blocks with timelines, decaying temporal resolution, and cross-agent shared tables.
  • Typed, bounded tools: outputs conform to Pydantic schemas, giving agents a narrow, predictable surface instead of open-ended document access.

Caveats

  • The README examples import from internal-looking modules such as fenic.api.mcp._tool_generation_utils and fenic.core.mcp._server, suggesting the API may still be settling.
  • It offloads inference from the agent’s window but does not eliminate LLM costs—you still pay for the tokens fenic consumes during extraction and embedding.
  • How save_as_table persists data and what backends are supported is not explained in the README.

Verdict

Worth evaluating if your agents struggle with large documents or long conversational memory and you want a structured pre-processing layer. Skip it if you need a full agent runtime—fenic is explicitly glue, not a framework.

Frequently asked

What is typedef-ai/fenic?
fenic offloads inference-heavy context work into a declarative DataFrame pipeline, then serves the results to any agent framework as bounded, typed tools.
Is fenic open source?
Yes — typedef-ai/fenic is open source, released under the Apache-2.0 license.
What language is fenic written in?
typedef-ai/fenic is primarily written in Python.
How popular is fenic?
typedef-ai/fenic has 542 stars on GitHub.
Where can I find fenic?
typedef-ai/fenic is on GitHub at https://github.com/typedef-ai/fenic.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.