| Name | Description | Package | Version | |-----------------------------------|---------------------------------------------------------------------------|---------|---------| | Stripe.CreateCustomer | This tool will create a customer in Stripe. | Stripe | 0.0.1 | | Stripe.ListCustomers | This tool will fetch a list of Customers from Stripe. | Stripe | 0.0.1 | | Stripe.CreateProduct | This tool will create a product in Stripe. | Stripe | 0.0.1 | | Stripe.ListProducts | This tool will fetch a list of Products from Stripe. | Stripe | 0.0.1 | | Stripe.CreatePrice | This tool will create a price in Stripe. If a product has not already been | Stripe | 0.0.1 | | Stripe.ListPrices | This tool will fetch a list of Prices from Stripe. | Stripe | 0.0.1 | | Stripe.CreatePaymentLink | This tool will create a payment link in Stripe. | Stripe | 0.0.1 | | Stripe.ListInvoices | This tool will list invoices in Stripe. | Stripe | 0.0.1 | | Stripe.CreateInvoice | This tool will create an invoice in Stripe. | Stripe | 0.0.1 | | Stripe.CreateInvoiceItem | This tool will create an invoice item in Stripe. | Stripe | 0.0.1 | | Stripe.FinalizeInvoice | This tool will finalize an invoice in Stripe. | Stripe | 0.0.1 | | Stripe.RetrieveBalance | This tool will retrieve the balance from Stripe. It takes no input. | Stripe | 0.0.1 | | Stripe.CreateRefund | This tool will refund a payment intent in Stripe. | Stripe | 0.0.1 | | Stripe.ListPaymentIntents | This tool will list payment intents in Stripe. | Stripe | 0.0.1 | | Stripe.CreateBillingPortalSession | This tool will create a billing portal session. | Stripe | 0.0.1 | ------------------------- This PR implements the tools in [stripe-agent-toolkit](https://github.com/stripe/agent-toolkit) verbatim. This means that the logic needed to implement these tools is minimal since stripe has already done the heavy lifting. The tools added in this toolkit are the same tools that are in the stripe-agent-toolkit, but formatted as Arcade tools. This means that the names of the tools, the parameter annotations, and tool docstrings are taken from the stripe-agent-toolkit. I have omitted evals since the tool definitions are taken from the stripe-agent-toolkit. The tools in this PR are generated via a script. I have included this script in the PR (`_generate.py`) so that if the stripe-agent-toolkit ever adds more tools, then we can simply run that script to generate the new tools.
58 lines
1.8 KiB
Makefile
58 lines
1.8 KiB
Makefile
.PHONY: help
|
|
|
|
help:
|
|
@echo "🛠️ stripe Commands:\n"
|
|
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
|
|
|
|
.PHONY: install
|
|
install: ## Install the poetry environment and install the pre-commit hooks
|
|
@echo "📦 Checking if Poetry is installed"
|
|
@if ! command -v poetry > /dev/null 2>&1; then \
|
|
echo "📦 Poetry not found. Checking if pip is available"; \
|
|
if ! command -v pip >/dev/null 2>&1; then \
|
|
echo "❌ pip is not installed. Please install pip first."; \
|
|
exit 1; \
|
|
fi; \
|
|
echo "📦 Installing Poetry with pip"; \
|
|
pip install poetry==1.8.5; \
|
|
else \
|
|
echo "📦 Poetry is already installed"; \
|
|
fi
|
|
@echo "🚀 Installing package in development mode with all extras"
|
|
poetry install --all-extras
|
|
|
|
.PHONY: build
|
|
build: clean-build ## Build wheel file using poetry
|
|
@echo "🚀 Creating wheel file"
|
|
poetry build
|
|
|
|
.PHONY: clean-build
|
|
clean-build: ## clean build artifacts
|
|
@echo "🗑️ Cleaning dist directory"
|
|
rm -rf dist
|
|
|
|
.PHONY: test
|
|
test: ## Test the code with pytest
|
|
@echo "🚀 Testing code: Running pytest"
|
|
@poetry run pytest -W ignore -v --cov --cov-config=pyproject.toml --cov-report=xml
|
|
|
|
.PHONY: coverage
|
|
coverage: ## Generate coverage report
|
|
@echo "coverage report"
|
|
coverage report
|
|
@echo "Generating coverage report"
|
|
coverage html
|
|
|
|
.PHONY: bump-version
|
|
bump-version: ## Bump the version in the pyproject.toml file
|
|
@echo "🚀 Bumping version in pyproject.toml"
|
|
poetry version patch
|
|
|
|
.PHONY: check
|
|
check: ## Run code quality tools.
|
|
@echo "🚀 Checking Poetry lock file consistency with 'pyproject.toml': Running poetry check"
|
|
@poetry check
|
|
@echo "🚀 Linting code: Running pre-commit"
|
|
@poetry run pre-commit run -a
|
|
@echo "🚀 Static type checking: Running mypy"
|
|
@poetry run mypy --config-file=pyproject.toml
|