Get started
Set up with a coding agent
Paste one prompt into Claude Code, Cursor, Codex, Gemini CLI, GitHub Copilot or Windsurf. The agent saves the EvalKit skill in your repository, then integrates the SDK into your project.
Your coding agent can install the SDK for you. Paste the prompt below into Claude Code, Cursor, Codex, Gemini CLI, GitHub Copilot, Windsurf or a similar agent, in the repository of the service you want traced. The agent reads the EvalKit skill, saves it in your repository so later sessions know how to work with EvalKit, and then integrates the SDK.
Read https://syntropylabs.ai/docs/evalkit-skill.md, save it as a skill or rule for this repository as it describes, then integrate EvalKit into this project following it. Ask me for the environment key's variable name if the project doesn't have one, and never write the key itself into a file.What the agent does
- Saves the skill as a skill or rule file for itself, in the place the table below gives.
- Detects the language, Python or TypeScript, and the web framework.
- Installs
syntropylabs-evalkitwith the project's own package manager. - Reads the environment key from an environment variable, such as
EVALKIT_SUBSCRIPTION_KEY, and adds the name to.env.exampleif the project has one. It never writes the key into a file. - Calls
init()once at the entry point and adds your framework's middleware line, so each request is one trace. - Asks whether to turn off content capture or add a
maskhook if the app handles personal data. - Runs the app, sends one request and tells you where to find the trace.
Where the skill is saved
| Agent | File | Notes |
|---|---|---|
| Claude Code | .claude/skills/syntropylabs-evalkit/SKILL.md | Save as is. |
| Codex | .agents/skills/syntropylabs-evalkit/SKILL.md | Save as is. |
| Gemini CLI | .gemini/skills/syntropylabs-evalkit/SKILL.md | Save as is. It also reads .agents/skills/. |
| GitHub Copilot | .github/skills/syntropylabs-evalkit/SKILL.md | Save as is. It also reads .claude/skills/ and .agents/skills/. |
| Cursor | .cursor/rules/syntropylabs-evalkit.mdc | Front matter: description (the same text) and alwaysApply: false. |
| Windsurf | .windsurf/rules/syntropylabs-evalkit.md | Front matter: trigger: model_decision and description. |
| Any other agent | AGENTS.md | Add an ## EvalKit section holding everything below the front matter. |
Newer Windsurf builds read .devin/rules/ first and .windsurf/rules/ as the fallback. Cursor and Windsurf also have skill features, but their documentation did not give a repository path we could confirm, so the skill uses their rule files. The saved file is part of your repository: commit it if your team should share it.
Get an environment key
The agent needs a key in the environment when it runs the app. Open Settings in the sidebar footer, then This project → Environments, and click Copy key on the Environment you want. Set it in your shell or secrets manager under the variable name the agent uses. See Create an environment and get its key.
What the skill covers
The skill is written for syntropylabs-evalkit 0.3.2, for Python and TypeScript. Besides the setup, it covers content capture and masking, how to check that traces arrive, and optional next steps: sessions and agent names, Eval() runs in CI with a gate, and prompts. Evaluations and Prompts are paid plan features.
To do the same steps by hand, follow Install the SDK.