Python: [Feature]: Crypto Payroll Agent — end-to-end sample with on-chain batch payments
メンテナーはふだん 1 日以内に返信
@eavanvalkenburg がすでに取り組んでいます。
2026年9月30日 から。
評価
この issue はまだ評価されていません。
説明
Description
What problem does it solve?
The current sample set covers travel planning, content generation, M365, RAG, and workflows — but no sample demonstrates an agent handling irreversible financial operations with real side effects. Developers building payment or fintech agents don't have a reference for guardrail patterns (spend ceilings, recipient caps, confirmation gates) on actions that move real value.
What would the expected behavior be?
A self-contained sample in python/samples/05-end-to-end/crypto_payroll_agent/ where an AI agent accepts a natural-language payroll instruction (e.g. "Pay Alice 50 USDC and Bob 30 USDC on Base"), resolves it into structured recipient/amount data, calls a payment gateway's REST API to build the unsigned transaction, signs locally, broadcasts, and confirms settlement — all through MAF tool functions.
The sample would include:
- 3–4 tool functions (estimate batch cost, get token info, execute batch, check transaction)
- A guardrail callback enforcing recipient count ≤ 200, address format validation, and a configurable MAX_BATCH_USD spending ceiling
- README with setup, walkthrough, and on-chain proof transactions from verification
- Tests runnable without a funded wallet (mocked gateway responses)
The payment gateway used would be Spraay Protocol (gateway.spraay.app), operated by Plagtech LLC — my company. The gateway charges a 0.3% protocol fee on batches and $0.02 per API call. These fees would be documented in the sample README. The gateway is the only Spraay-specific dependency; the agent architecture, tool patterns, and guardrail approach are framework-general.
Are there any alternatives you've considered?
The sample could also fit in microsoft/Agent-Framework-Samples under 09.Cases/ if that's a better home for third-party integration demos.
Prior art
I've contributed similar payment-agent samples to other frameworks:
- NVIDIA NeMo-Agent-Toolkit-Examples #27 (merged) — RTP payment tools
- Strands Agents Docs #825 (merged) — batch payment integration on the official Strands docs site
- Oracle AI Developer Hub #131 (merged) — x402 partner notebook
Questions for maintainers
- Is
python/samples/05-end-to-end/the right location? - Any preference on LLM provider the sample should target (GitHub Models, Azure OpenAI, OpenAI)?
- Should tools use
@toolor@kernel_function? I'll match whichever convention the existing samples follow.
Code Sample
from agent_framework import Agent
# Tool functions would call the Spraay gateway REST API
# Example: estimate a batch payment
@tool
async def estimate_batch(token: str, recipients: list[str], amounts: list[str]) -> str:
"""Estimate gas and fees for a batch payment on Base."""
response = await httpx.AsyncClient().post(
"https://gateway.spraay.app/api/v1/batch/estimate",
json={"token": token, "recipients": recipients, "amounts": amounts}
)
return response.json()
agent = Agent(
client=..., # Azure OpenAI or GitHub Models
name="PayrollAgent",
instructions="You are a payroll agent that executes batch crypto payments on Base.",
tools=[estimate_batch, execute_batch, get_token_info, check_transaction],
)
Language/SDK
Python
- 主要言語
- Python
- スター
- 13.6k
- フォーク
- 2.3k
- 平均マージ
- 1日 15時間
- マージ済み PR(30日)
- 442
環境構築
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
microsoft/agent-framework のほかの issue
-
python triage
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
microsoft/agent-framework#8632 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
Python: Clarify when to use platform対応中かも @eavanvalkenburg が今日担当しました。 オープンpython triage
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
microsoft/agent-framework#8599 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
.NET compaction documentation
難易度 1/5 1時間未満 初心者へのやさしさ 82/100
microsoft/agent-framework#4629 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
Python: [Bug]: Local shell results are sent to OpenAI as exit 0, even when the command failed or timed out対応中かも @eavanvalkenburg が今日担当しました。 オープンpython reproduced skills
microsoft/agent-framework#8929 · コメント 1 件 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
-
Python: [Bug]: OllamaEmbeddingClient drops numeric zero keep_alive対応中かも @eavanvalkenburg が今日担当しました。 オープンagents python reproduced
microsoft/agent-framework#8927 · コメント 1 件 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
microsoft/agent-framework の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
kornia/kornia#5263 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
approved correction metadata
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
acl-org/acl-anthology#10133 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
BasedHardware/omi#20084 ·
メンテナーはふだん 1 日以内に返信
-
bug needs-acceptance wg/evaluation-quality
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
vllm-project/semantic-router#4424 ·
メンテナーはふだん 1 日以内に返信