Skip to main content

Kgentik SDK for seamless tool resolution and agent development

Project description

Kgentik SDK

Seamless tool resolution and agent development for the Kgentik platform.

Installation

For local development:

pip install kgentik

Note: In deployed environments, the SDK is automatically injected and no installation is required.

Quick Start

The KgentikTools wrapper automatically detects and loads tools from your kgentik.yaml configuration:

from kgentik.tools import KgentikTools
from langgraph.prebuilt import create_react_agent
from langchain_openai import ChatOpenAI

# Initialize tools - automatically reads from kgentik.yaml
kgentik_tools = KgentikTools()
tools = kgentik_tools.get_tools()

# Create your agent
model = ChatOpenAI(model="gpt-4o-mini")
agent = create_react_agent(model, tools)

Configuration

Define your tools in kgentik.yaml:

tools:
  - name: "csv_parser"
    source: "local"
    file: "tools/csv_parser.py"
    description: "Parse CSV data"
  
  - name: "web-scraper"
    source: "community"
    description: "Scrape web pages"
  
  - name: "email-sender"
    source: "team"
    description: "Send emails"

Tool Sources

  • local: Tools you develop locally (requires file field)
  • team: Tools shared within your team
  • community: Public tools from the community

How It Works

Local Development

  1. Place your kgentik.yaml in your project root
  2. Create local tools in the tools/ directory
  3. Use KgentikTools() to automatically load all configured tools
  4. Same code works when deployed!

Deployed Environment

  1. Platform automatically injects the SDK during deployment
  2. Local tools are packaged alongside your agent
  3. Team/community tools are fetched and made available
  4. KgentikTools() resolves all tools seamlessly

Examples

Basic Usage

from kgentik.tools import KgentikTools

# Auto-detects kgentik.yaml and loads all tools
tools = KgentikTools().get_tools()

Custom Config Path

from kgentik.tools import KgentikTools

# Specify custom config path
tools = KgentikTools(config_path="./custom-config.yaml").get_tools()

LangGraph Integration

from kgentik.tools import KgentikTools
from langgraph.prebuilt import create_react_agent
from langchain_openai import ChatOpenAI

kgentik_tools = KgentikTools()
tools = kgentik_tools.get_tools()

model = ChatOpenAI(model="gpt-4o-mini")
agent = create_react_agent(model, tools)

# Use your agent
result = agent.invoke({"messages": [("user", "Hello!")]})

Custom Agent Implementation

from kgentik.tools import KgentikTools
from langgraph.graph import StateGraph, START
from langgraph.prebuilt import ToolNode
from langchain_openai import ChatOpenAI

# Load tools
kgentik_tools = KgentikTools()
tools = kgentik_tools.get_tools()

# Create custom workflow
workflow = StateGraph(State)
workflow.add_node("agent", call_model)
workflow.add_node("tools", ToolNode(tools))
workflow.add_edge(START, "agent")
workflow.add_conditional_edges("agent", should_continue)

app = workflow.compile()

Error Handling

The SDK provides clear error messages for common issues:

# Missing kgentik.yaml
FileNotFoundError: No kgentik.yaml found. Please ensure you're in a Kgentik project directory or provide a config_path.

# Missing tool file
FileNotFoundError: Tool file not found: /path/to/tools/missing_tool.py

# Invalid tool source
ValueError: Unknown tool source: invalid_source

Troubleshooting

Tool Not Found

  1. Check that your tool is defined in kgentik.yaml
  2. Verify the file path is correct for local tools
  3. Ensure the tool function is properly exported

Import Errors

  1. Make sure you're in a Kgentik project directory
  2. Verify kgentik.yaml exists in current or parent directory
  3. Check that required dependencies are installed

Deployment Issues

  1. Ensure your agent uses KgentikTools() (not manual imports)
  2. Verify all tools are properly configured in kgentik.yaml
  3. Check that team/community tools exist and are accessible

Future Roadmap

Planned Features

  • CLI Tools: kgentik deploy, kgentik test, kgentik init
  • Testing Utilities: Built-in testing framework for agents
  • Deployment Helpers: Streamlined deployment process
  • Multi-Framework Support: Enhanced support for LlamaIndex, CrewAI, etc.
  • Tool Validation: Type checking and validation for tools
  • Hot Reloading: Development mode with automatic reloading

Contributing

The SDK is part of the Kgentik platform. For contributions and issues, please visit our GitHub repository.

License

MIT License - see LICENSE file for details.

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

kgentik-0.1.1.tar.gz (6.1 kB view details)

Uploaded Source

Built Distribution

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

kgentik-0.1.1-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

Details for the file kgentik-0.1.1.tar.gz.

File metadata

  • Download URL: kgentik-0.1.1.tar.gz
  • Upload date:
  • Size: 6.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.2 CPython/3.13.3 Darwin/24.4.0

File hashes

Hashes for kgentik-0.1.1.tar.gz
Algorithm Hash digest
SHA256 008572ad503923b312578873590f1c30d3804a8b3bf8813752ca47e9073dae6a
MD5 35cad6a8e5fddd9208e29a98090c1372
BLAKE2b-256 3154211edb60ad35119db011fb717bd5d302a45a371d5b968ae12824d0c3ca65

See more details on using hashes here.

File details

Details for the file kgentik-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: kgentik-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 4.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.2 CPython/3.13.3 Darwin/24.4.0

File hashes

Hashes for kgentik-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7df7f135fe978759088dcdbabfd6266171f5f8c56e654ef7b6243acb60c6860a
MD5 a0a8989e50a8b447ec5e08cd98958a70
BLAKE2b-256 e126d7ddf7eb888b5fe3bace41f79f1a35b750ed2542210d484a3d4ad3ae1583

See more details on using hashes here.

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