Transparent Endpoint Knowledge for Intelligent Reasoning
TEKIR is an open standard that makes HTTP API responses self-explaining for AI agents. Instead of returning cryptic status codes that leave agents guessing, TEKIR-enriched responses tell the caller what happened, why, and what to do next - for both successes and errors.
In Turkish, tekir is the word for tabby - the iconic mixed-breed street cat found on every corner of Istanbul. Tekir cats are not bred for pedigree. They are forged by the streets: resilient, cunning, genetically diverse, and sharpened by generations of natural selection. They don't need a breeder or a manual - they figure things out. That's exactly what TEKIR does for APIs: it gives every response the street smarts to explain itself, so agents can figure out what to do next without guessing.
{
"status": 410,
"message": "Gone"
}
{
"status": 410,
"title": "Thread is gone",
"reason": "Threads are archived after 90 days
of inactivity. Messages are still accessible
but no new messages can be posted.",
"next_actions": [{
"id": "create_thread",
"title": "Create a new thread",
"description": "Creates a new thread in the
same channel. Include previous_thread_id
in metadata to link the threads and
preserve conversation history.",
"href": "/v1/threads",
"method": "POST",
"effect": "create"
}],
"agent_guidance": [
"Explain to the user that the thread was
archived and their message was not sent.",
"Ask whether they want to start a new
thread - do not create one automatically.",
"If they just need old messages, use
GET /v1/threads/thr_123/messages instead."
],
"user_confirmation_required": true,
"retry_policy": { "retryable": false }
}
Structured metadata that LLMs can reason about - not just status codes and guesswork.
Not just errors. Success responses can include follow-up actions, guidance, and workflow hints.
Drop TEKIR.md into your project. Your AI coding assistant builds TEKIR-compliant APIs automatically.
Effectful actions are tagged. User confirmation flags signal that agents should not act without approval (based on the trust-the-agent model).
Extends RFC 9457. Backwards compatible. Unknown fields are safely ignored by existing clients.
Works with any language, any framework. Just add the fields to your JSON responses.
Pick your integration style. All maintained in the same repo.
Install as a plugin. Gives you the /tekir skill inside Claude Code.
/plugin marketplace add tangelo-ltd/tekir
/plugin install tekir@tangelo-ltd-tekir
Add TEKIR.md to your project root. Your AI assistant follows it on every interaction.
curl -o TEKIR.md \
https://raw.githubusercontent.com/tangelo-ltd/tekir/main/TEKIR.md
Append to .cursorrules for automatic TEKIR compliance in Cursor.
curl -sL https://raw.githubusercontent.com/tangelo-ltd/tekir/main/prompts/cursor-rules.md \
>> .cursorrules
| Field | Type | Purpose |
|---|---|---|
reason |
string | Why the response has this outcome |
limitations |
array | Constraints that affected the response |
next_actions |
array | Machine-actionable follow-up steps |
agent_guidance |
array | Natural-language instructions for agents |
user_confirmation_required |
boolean | Must the agent ask the user first? |
retry_policy |
object | Structured retry hints |
links |
array | Related resources (RFC 8288) |
All fields are optional. Add them incrementally - even one next_actions makes a difference.
Agents can auto-detect TEKIR support and learn your entire API surface from a single response.
Agent hits any endpoint → sees TEKIR-Discovery header → fetches tekir.json → knows everything.
TEKIR extends Problem Details beyond errors to all responses. Every valid RFC 9457 response is a valid TEKIR response.
MCP handles tool discovery and invocation. TEKIR handles what comes back - the response. They're complementary.
OpenAPI defines your API contract at design time. TEKIR provides runtime response metadata that agents can act on.
REST promised self-describing APIs. TEKIR finally makes hypermedia controls practical - because LLMs can actually use them.