Tinkuy Labs
AI Agent Infrastructure for Edge
The Almost-Zero Stack.
Run AI agents on Cloudflare Workers. Your bill stays near $0.
Budget-guarded from day one. Production-ready from line one.
The Almost-Zero Journey
How your agent goes from zero to production without burning money.
Scale to Zero
Your agent sleeps when idle. Cloudflare Workers cold-start in <5ms. You pay nothing until someone talks to your agent. Not "serverless with a minimum" — actually zero.
On-Demand with Guards
When traffic comes, Sayay watches every token. $5/day budget? The agent auto-downgrades to a free model before burning credits. You set the ceiling — the agent respects it.
FinOps Intelligence Always
From the first request, you know what each user costs. Styrr auto-routes to the cheapest model that works. TideRAG runs on free-tier Vectorize. The stack is designed for cost-awareness, not just cost-avoidance.
The Stack
Five packages. Zero dependencies between them. Use one or all.
Styrr
@carloscortezcloud/styrr-llm
Multi-model LLM router. Ordered fallback chain. If model A rate-limits → try B → try C. Zero config.
const router = new StyrRouter({models: [model_a, model_b, model_c],
apiKey
})
Sayay
npm @carloscortezcloud/sayay-guard · pip sayay
Budget guardrails. Set $X/day per user. Warn at 80%. Block at 95%. Auto-degrade model when budget runs low.
const guard = new SayayGuard({budget: { dailyUsd: 5.0 }
}) // never exceed
Tinkuy
@carloscortezcloud/tinkuy-agent
The agent loop. 200 lines. Call LLM → parse tool_calls → execute → feed back → repeat. Provider-agnostic. Edge-native. Pluggable.
const agent = new Agent({ router, guard, tools, systemPrompt });const result = await agent.run("What are my AWS costs?");// 3 iterations | 2 tools called | 7s | $0.00
Install
Pick what you need. Each package is independent.
npm install @carloscortezcloud/styrr-llmnpm install @carloscortezcloud/sayay-guardpip install sayaynpm install @carloscortezcloud/tinkuy-agentnpm install @carloscortezcloud/tideragnpm install @carloscortezcloud/qhawaypip install qhaway-tracenpm install @carloscortezcloud/tinkuy-agent @carloscortezcloud/styrr-llm @carloscortezcloud/sayay-guard @carloscortezcloud/tiderag @carloscortezcloud/qhawayCopy for your Coding Agent
Paste this into Kiro, Claude, Cursor, or GitHub Copilot. It knows how to set up the full stack.
# Tinkuy Labs — AI Agent Stack Setup
## Install
npm install @carloscortezcloud/tinkuy-agent @carloscortezcloud/styrr-llm @carloscortezcloud/sayay-guard
## Create an agent with multi-model fallback + budget guards:
```typescript
import { Agent, defineTool } from '@carloscortezcloud/tinkuy-agent';
import { StyrRouter } from '@carloscortezcloud/styrr-llm';
import { SayayGuard, MemoryStorage } from '@carloscortezcloud/sayay-guard';
// Define a tool
const myTool = defineTool({
name: 'search',
description: 'Search for information',
parameters: { type: 'object', properties: { query: { type: 'string' } }, required: ['query'] },
execute: async (args) => { /* your logic */ return { result: 'found' }; },
});
// Create agent
const agent = new Agent({
router: new StyrRouter({
apiKey: process.env.OPENROUTER_API_KEY,
models: [
{ id: 'nvidia/nemotron-3-ultra-550b-a55b:free' },
{ id: 'google/gemma-4-31b-it:free' },
],
}),
guard: new SayayGuard({
storage: new MemoryStorage(),
budget: { dailyUsd: 5.0 },
}),
tools: [myTool],
systemPrompt: 'You are a helpful assistant.',
maxIterations: 5,
});
const result = await agent.run('Hello!');
console.log(result.text); // Agent's response
console.log(result.toolsUsed); // Which tools were called
```
## Key concepts:
- StyrRouter: tries models in order, auto-fallbacks on 429/404/402
- SayayGuard: blocks/warns when budget exceeded (set per user/day/month)
- Agent: tool loop (LLM → tool_calls → execute → feed back → repeat)
- defineTool: type-safe tool factory with name, description, parameters, execute
## Links:
- GitHub: https://github.com/breakingthecloud/tinkuylabs
- npm: @carloscortezcloud/tinkuy-agent, styrr-llm, sayay-guard, tiderag
- Docs: https://tinkuylabs.finoptix.devStart in 30 seconds
# Install
npm install @carloscortezcloud/tinkuy-agent @carloscortezcloud/styrr-llm
# Create agent (10 lines)
import { Agent, defineTool } from '@carloscortezcloud/tinkuy-agent'
import { StyrRouter } from '@carloscortezcloud/styrr-llm'
const agent = new Agent({
router: new StyrRouter({ apiKey, models: [{ id: 'nvidia/nemotron-3-ultra:free' }] }),
tools: [myTool],
systemPrompt: 'You are a helpful assistant.'
})
const result = await agent.run('Hello!')
// → Agent calls tools, reasons, responds. $0.00 cost.Works with your framework
Not another framework to replace Strands or LangChain. Tinkuy Labs is the FinOps + portability layer — routing, budget guardrails, and observability that plug into what you already run, including AWS Bedrock AgentCore.
| Capability | Add with Tinkuy Labs | Strands / AgentCore | LangChain |
|---|---|---|---|
| Token budget guardrails | ✓ Sayay | ✗ | ✗ |
| Cost + trace observability | ✓ Qhaway | Partial | ✗ |
| Multi-model fallback | ✓ Styrr | Bedrock-first | ✗ |
| Edge RAG ($0/mo) | ✓ TideRAG | ✗ | Pinecone $70 |
| Runs on AWS Bedrock AgentCore | ✓ | ✓ | Partial |
| Runs on the edge / no lock-in | ✓ CF + Node + AWS | AWS-centric | Node |
| Bundle size | ~1KB, zero deps | Large | Large |
Already on Strands? Wrap it with Sayay for budgets and Qhaway for cost traces. One agent.config.yaml translates to Strands, LangGraph, OpenAI Agents, CrewAI — or Tinkuy.
Deploy anywhere
Same TypeScript code. Multiple runtimes. AWS Bedrock AgentCore needs only an HTTP server in an ARM64 container — and that's exactly what the stack ships.
Used in production

100+ findings • 6 tools • RAG knowledge • Free model routing