@proco/agent-skill

Finance for your
agent framework.

Drop-in adapters that give LangChain, AutoGen, and CrewAI agents direct access to Proco's financial primitives — wallets, payments, and spending controls — with zero boilerplate.

Read the docs View on npm ↗
LangChain
AutoGen
CrewAI
Frameworks

Works where you work.

Each adapter wraps the same 6 financial tools in the native format for its framework. Auto-detection picks the right one if you have multiple installed.

LangChain
Returns a ready-to-use StructuredTool array. Pass them directly to your agent's tools list.
npm i @proco/agent-skill langchain
TYPESCRIPT · LANGCHAIN
import { procoTools } from '@proco/agent-skill/langchain';
import { AgentExecutor, createOpenAIFunctionsAgent } from 'langchain/agents';

const tools = await procoTools({
  apiKey: process.env.PROCO_API_KEY,
});

const agent = await createOpenAIFunctionsAgent({
  llm, prompt,
  tools, // ← just pass them here
});

const executor = new AgentExecutor({ agent, tools });
AutoGen
Returns a tool definition map compatible with AutoGen's function_map format. Works with both AssistantAgent and UserProxyAgent.
npm i @proco/agent-skill autogen
TYPESCRIPT · AUTOGEN
import { procoTools } from '@proco/agent-skill/autogen';

const { function_map, llm_config } = await procoTools({
  apiKey: process.env.PROCO_API_KEY,
});

const assistant = new AssistantAgent({
  name: 'finance_agent',
  llm_config: { ...llm_config, config_list },
});

const user_proxy = new UserProxyAgent({
  function_map, // ← pass function_map here
});
CrewAI
Returns a Python-compatible JSON schema and a ready-to-paste code snippet for defining a CrewAI tool class.
pip install proco-agent-skill crewai
PYTHON · CREWAI
from crewai_tools import BaseTool
import requests, os

class ProcoSendPayment(BaseTool):
    name: str = "send_payment"
    description: str = (
        "Send USDC to any wallet address or email. "
        "Args: from_wallet, to, amount_usdc, memo"
    )

    def _run(self, from_wallet, to, amount_usdc, memo=""):
        r = requests.post("https://api.procohq.com/v1/payments",
            headers={"Authorization": f"Bearer {os.environ['PROCO_API_KEY']}"},
            json={"from": from_wallet, "to": to,
                  "amount": int(amount_usdc * 1_000_000), "memo": memo})
        return r.json()
Your agent deserves its own wallet.
Free sandbox. Works with your existing framework. Up in minutes.
Start building free