Быстрый старт
Хотите сразу приступить? Здесь всё, что нужно, чтобы начать прямо сейчас.
Попробуйте: Playground
- Откройте Playground и войдите.
- Вставьте любой текст как состояние.
Пример состояния
Hi, I've been trying to connect my Stripe account for 3 days and the integration keeps failing. I'm losing sales. Please help ASAP.
- Добавьте вопрос. Попробуйте вопрос Noul:
"Does this message express urgency?"
{
"urgency": {
"type": "noul",
"instructions": "Does this message express urgency?"
}
}
- Добавьте ещё вопросов. Смешайте Noul, Choice и Score в одном вызове и увидьте все результаты сразу.
Вызовите: API
- Получите ключ API в dashboard
- Отправьте POST-запрос на endpoint API
- Изучите справочник по API со всеми подробностями.
POST https://api.typesafe.ai/v1/systemone
Authorization: Bearer <API_KEY>
Content-Type: application/json
Пример команды cURL
curl -X POST https://api.typesafe.ai/v1/systemone \
-H "Authorization: Bearer $TYPESAFE_API_KEY" \
-H "Content-Type: application/json" \
-d @- <<'EOF'
{
"state": "Hi, I've been trying to connect my Stripe account for 3 days and the integration keeps failing. I'm losing sales. Please help ASAP.",
"model": "jev-latest",
"questions": {
"urgency": {
"type": "noul",
"instructions": "Does this message express urgency?"
}
}
}
EOF
Тело запроса
{
"state": "Hi, I've been trying to connect my Stripe account for 3 days and the integration keeps failing. I'm losing sales. Please help ASAP.",
"model": "jev-latest",
"questions": {
"department": {
"type": "choice",
"instructions": "Which team should handle this",
"criteria": {
"billing": "Payment or subscription issues",
"technical": "Bugs or integration problems",
"sales": "Pricing or account questions"
}
},
"frustration": {
"type": "score",
"instructions": "How frustrated the customer appears",
"criteria": [
"Calm, just stating facts",
"Frustrated but civil",
"Very angry, strong language"
]
},
"is_urgent": {
"type": "noul",
"instructions": "The message conveys urgency or time-sensitivity"
}
}
}
Тело ответа
{
"model": "jev-1.13.0",
"answers": {
"department": {
"type": "choice",
"choice": "technical",
"confidence": 0.78,
"probabilities": {
"technical": 0.85,
"sales": 0.0,
"billing": 0.15
}
},
"frustration": {
"type": "score",
"score": 1.0,
"confidence": 1.0,
"legend": {
"0": "Calm, just stating facts",
"1": "Frustrated but civil",
"2": "Very angry, strong language"
},
"probabilities": {
"0": 0.0,
"1": 1.0,
"2": 0.0
}
},
"is_urgent": {
"type": "noul",
"noul": 1.0
}
},
"usage": {
"input_tokens": 392,
"output_tokens": 65
}
}
См. справочник по API со всеми подробностями.
Напишите код: Python SDK
- Установите SDK (требуется Python >= 3.10).
С pip
pip install typesafe-sdk
С uv
uv add typesafe-sdk
- Используйте SDK. Клиент читает
TYPESAFE_API_KEYиз окружения и по умолчанию вызываетjev-latest.
from typesafe_sdk import Choice, Noul, Score, TypeSafeClient
client = TypeSafeClient()
ticket = "Hi, I've been trying to connect my Stripe account for 3 days and the integration keeps failing. I'm losing sales. Please help ASAP."
response = client.system_one(
state=ticket,
questions={
"department": Choice(
instructions="Which team should handle this",
criteria={
"billing": "Payment or subscription issues",
"technical": "Bugs or integration problems",
"sales": "Pricing or account questions",
},
),
"frustration": Score(
instructions="How frustrated the customer appears",
criteria=[
"Calm, just stating facts",
"Frustrated but civil",
"Very angry, strong language",
],
),
"is_urgent": Noul(
instructions="The message conveys urgency or time-sensitivity",
),
},
)
print(response.answers["department"].choice) # "technical"
print(response.answers["frustration"].score) # 1.0
print(response.answers["is_urgent"].noul) # 1.0
См. клиентские SDK для вариантов установки и подробного использования.
Вайб-вариант: навык агента
- Установите навык TypeSafe через плагин Claude Code или
npx skills add typesafe-ai/skills --skill typesafe-ai. Также можно прочитать SKILL.md на GitHub.
Выполните эти две команды в терминале:
claude plugin marketplace add typesafe-ai/skills
claude plugin install typesafe@typesafe-ainpx skills add typesafe-ai/skills --skill typesafe-aiВыберите вашего агента, когда появится запрос. По умолчанию установка локальная для проекта; добавьте -g, чтобы установить глобально.
Вставьте этот промпт в ваш кодинг-агент:
Install the TypeSafe skill. If you're in Claude Code, run `claude plugin marketplace add typesafe-ai/skills`, then `claude plugin install typesafe@typesafe-ai`. If you're in another agent, run `npx skills add typesafe-ai/skills --skill typesafe-ai` and select your agent. Use one installation method. You can read the skill directly at https://github.com/typesafe-ai/skills/blob/main/skills/typesafe-ai/SKILL.md (raw: https://raw.githubusercontent.com/typesafe-ai/skills/main/skills/typesafe-ai/SKILL.md). Then use the TypeSafe skill when working on this project.- Скажите вашему кодинг-агенту использовать навык TypeSafe, пока вы пишете код!
Промпт для кодинг-агента
Let's build a simple CLI that uses the TypeSafe API to evaluate a set of supplied documents on multiple dimensions. Use the TypeSafe skill to understand how to use the TypeSafe API and how to structure the system. Ask me questions about what kinds of documents I want to evaluate and on what dimensions.
Подробнее на странице Навык агента.