Aider

Aider Quickstart

Use --read TAUFUNCTIONS-SKILL.md to give Aider the full TauFunctions API. It reads the skill file and drives the API from the terminal.

Step 1. Get your API key

curl -s -X POST https://taufunctions.com/api/signup \
  -H "Content-Type: application/json" \
  -d '{"tenantId":"my-project","agent":"aider"}' | jq .

Save to your project .env:

# .env
TF_BASE_URL=https://taufunctions.com
TF_API_KEY=tf_free_YOUR_KEY_HERE

Step 2. Create TAUFUNCTIONS-SKILL.md

Create a file called TAUFUNCTIONS-SKILL.md in your project root. Then launch Aider with the --read flag.

Aider pattern: Use aider --read TAUFUNCTIONS-SKILL.md to load the skill file as read-only context. Aider will see all the endpoints and can run curl commands via its shell tool.
# TauFunctions — Serverless Functions API

## Environment
- TF_BASE_URL=https://taufunctions.com
- TF_API_KEY is in .env (source it or use $TF_API_KEY)

## Auth
All requests need: Authorization: Bearer $TF_API_KEY

## Endpoints
- POST   $TF_BASE_URL/saas/api/v1/sdk/tau/functions              — Create function
- GET    $TF_BASE_URL/saas/api/v1/sdk/tau/functions              — List functions
- GET    $TF_BASE_URL/saas/api/v1/sdk/tau/functions/:id          — Get function
- PUT    $TF_BASE_URL/saas/api/v1/sdk/tau/functions/:id          — Update function
- DELETE $TF_BASE_URL/saas/api/v1/sdk/tau/functions/:id          — Delete function
- POST   $TF_BASE_URL/saas/api/v1/sdk/tau/functions/:id/deploy   — Deploy function
- POST   $TF_BASE_URL/saas/api/v1/sdk/tau/functions/:id/invoke   — Invoke function
- GET    $TF_BASE_URL/saas/api/v1/sdk/tau/functions/:id/stats    — Get stats
- GET    $TF_BASE_URL/saas/api/v1/sdk/tau/functions/:id/logs     — Get logs
- GET    $TF_BASE_URL/saas/api/v1/sdk/tau/runtimes               — List runtimes

## Create Function Body
{
  "name": "function-name",
  "runtime": "nodejs20",         // nodejs18, nodejs20, nodejs22, python3.11, python3.12
  "handler": "index.handler",
  "code": "module.exports.handler = async (event) => { ... }",
  "trigger": "http"              // http, cron, event, webhook, manual
}

## Invoke Body
{ "payload": { "key": "value" } }

## Free Plan: 10 functions, 100 invocations/day, 1 API key

## Workflow: Create -> Deploy -> Invoke -> Check stats/logs

Then start Aider:

aider --read TAUFUNCTIONS-SKILL.md

Step 3. Create a function

curl -s -X POST https://taufunctions.com/saas/api/v1/sdk/tau/functions \
  -H "Authorization: Bearer $TF_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "hello-world",
    "runtime": "nodejs20",
    "handler": "index.handler",
    "code": "module.exports.handler = async (event) => { return { statusCode: 200, body: JSON.stringify({ message: \"Hello from TauFunctions!\" }) }; }",
    "trigger": "http"
  }' | jq .

Save the returned id for the next steps.

Step 4. Deploy the function

curl -s -X POST https://taufunctions.com/saas/api/v1/sdk/tau/functions/$FN_ID/deploy \
  -H "Authorization: Bearer $TF_API_KEY" | jq .

Step 5. Invoke with a JSON payload

curl -s -X POST https://taufunctions.com/saas/api/v1/sdk/tau/functions/$FN_ID/invoke \
  -H "Authorization: Bearer $TF_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"payload":{"name":"World"}}' | jq .

Step 6. View stats and logs

# Stats
curl -s https://taufunctions.com/saas/api/v1/sdk/tau/functions/$FN_ID/stats \
  -H "Authorization: Bearer $TF_API_KEY" | jq .

# Logs
curl -s https://taufunctions.com/saas/api/v1/sdk/tau/functions/$FN_ID/logs \
  -H "Authorization: Bearer $TF_API_KEY" | jq .

Step 7. Try Python runtime

# Create
curl -s -X POST https://taufunctions.com/saas/api/v1/sdk/tau/functions \
  -H "Authorization: Bearer $TF_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "py-hello",
    "runtime": "python3.12",
    "handler": "handler.main",
    "code": "def main(event):\n    name = event.get(\"name\", \"World\")\n    return {\"statusCode\": 200, \"body\": f\"Hello, {name}! From Python.\"}",
    "trigger": "http"
  }' | jq .

# Deploy
curl -s -X POST https://taufunctions.com/saas/api/v1/sdk/tau/functions/$PY_FN_ID/deploy \
  -H "Authorization: Bearer $TF_API_KEY" | jq .

# Invoke
curl -s -X POST https://taufunctions.com/saas/api/v1/sdk/tau/functions/$PY_FN_ID/invoke \
  -H "Authorization: Bearer $TF_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"payload":{"name":"Aider Agent"}}' | jq .

Step 8. Free plan limits

ResourceFree Plan
Functions10
Invocations / day100
API keys1
RuntimesAll (Node.js 18/20/22, Python 3.11/3.12)

Check limits: curl -s https://taufunctions.com/api/signup/limits | jq .

Need more? Contact support@taufunctions.com to upgrade.