Skip to main content

Univer Use: LangGraph-powered agent utilities and tools for Univer spreadsheets

Project description

Univer Use

LangGraph-powered agent utilities and tools for Univer spreadsheets. This library provides a ready-to-use graph entrypoint and helper tools to build agents that operate against Univer via Univer-MCP.

Features

  • LangGraph graph entrypoint: univer_use/graph.py:build_graph
  • Spreadsheet action agent with MCP tools
  • Prompt templates packaged with the library

Install You can install this package using either name (both are the same package):

Option 1: univer-use

  • pip: pip install univer-use
  • uv: uv add univer-use
  • Poetry: poetry add univer-use

Option 2: spreadsheet-use

  • pip: pip install spreadsheet-use
  • uv: uv add spreadsheet-use
  • Poetry: poetry add spreadsheet-use

Note: Both univer-use and spreadsheet-use provide identical functionality. Choose whichever name you prefer.

Requirements

  • Python 3.11+
  • Credentials via environment or .env (python-dotenv):
    • OPENROUTER_API_KEY – API key for your OpenRouter-compatible provider
    • OPENROUTER_ENDPOINT – Base URL for the provider endpoint
    • UNIVER_API_KEY – Univer API key (if required by your MCP setup)

Quickstart Minimal example to compile and run the graph once:

import asyncio
# Both imports work the same way:
# from univer_use import build_graph
from spreadsheet_use import build_graph

async def main():
    graph = await build_graph()
    # Provide initial state. At minimum, include a conversation_id.
    state = {
        "messages": [],
        "conversation_id": "default",
    }
    result = await graph.ainvoke(state)
    print(result)

asyncio.run(main())

Run Locally with LangGraph CLI The repo includes a local dev config that uses the build_graph entrypoint:

langgraph dev --config examples/sheet_edit/langgraph.json --debug-port 5678 --allow-blocking

This uses the graph at univer_use/graph.py:build_graph. Set env vars in .env or your shell before running. See examples/sheet_edit/.env for an example.

Development

Setup

  • Install dependencies: uv sync

Adding Dependencies Simply use standard dependency management commands:

# Add a runtime dependency
uv add package-name

# Add a development dependency  
uv add --dev package-name

Building & Testing

  • Run tests: uv run pytest -q
  • Build both packages: make build-both

Available Make Commands Run make help to see all available commands for development.

Package Architecture

  • univer-use: The main package containing all functionality
  • spreadsheet-use: A lightweight alias package that depends on univer-use

License MIT. See LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

univer_use-0.1.1a6.tar.gz (141.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

univer_use-0.1.1a6-py3-none-any.whl (20.4 kB view details)

Uploaded Python 3

File details

Details for the file univer_use-0.1.1a6.tar.gz.

File metadata

  • Download URL: univer_use-0.1.1a6.tar.gz
  • Upload date:
  • Size: 141.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for univer_use-0.1.1a6.tar.gz
Algorithm Hash digest
SHA256 766916f539a870593f69518bcb93875c1e64c25acec25ff16ffe58feac036d81
MD5 e7de721c8e663b453ae178438db1dc15
BLAKE2b-256 3a6308fc1670cdc6bc666c3b20f523d8dd74ebe27d0a38bd1a9b03d23b603f0a

See more details on using hashes here.

Provenance

The following attestation bundles were made for univer_use-0.1.1a6.tar.gz:

Publisher: release.yml on dream-num/univer-use

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file univer_use-0.1.1a6-py3-none-any.whl.

File metadata

  • Download URL: univer_use-0.1.1a6-py3-none-any.whl
  • Upload date:
  • Size: 20.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for univer_use-0.1.1a6-py3-none-any.whl
Algorithm Hash digest
SHA256 96f5633ca1334028b4bd99447ec79ed7ba009a68b456e3f75d8490e5d661bb09
MD5 ef345043859968497b68130dec798c7c
BLAKE2b-256 c5e4ce522fc1bc541f5408fa25f765e4f8d2e7bd2bdd9d8bbc7d5fd95f1ca26f

See more details on using hashes here.

Provenance

The following attestation bundles were made for univer_use-0.1.1a6-py3-none-any.whl:

Publisher: release.yml on dream-num/univer-use

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page