Docs

    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.

    Prompt
    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

    1. Saves the skill as a skill or rule file for itself, in the place the table below gives.
    2. Detects the language, Python or TypeScript, and the web framework.
    3. Installs syntropylabs-evalkit with the project's own package manager.
    4. Reads the environment key from an environment variable, such as EVALKIT_SUBSCRIPTION_KEY, and adds the name to .env.example if the project has one. It never writes the key into a file.
    5. Calls init() once at the entry point and adds your framework's middleware line, so each request is one trace.
    6. Asks whether to turn off content capture or add a mask hook if the app handles personal data.
    7. Runs the app, sends one request and tells you where to find the trace.

    Where the skill is saved

    AgentFileNotes
    Claude Code.claude/skills/syntropylabs-evalkit/SKILL.mdSave as is.
    Codex.agents/skills/syntropylabs-evalkit/SKILL.mdSave as is.
    Gemini CLI.gemini/skills/syntropylabs-evalkit/SKILL.mdSave as is. It also reads .agents/skills/.
    GitHub Copilot.github/skills/syntropylabs-evalkit/SKILL.mdSave as is. It also reads .claude/skills/ and .agents/skills/.
    Cursor.cursor/rules/syntropylabs-evalkit.mdcFront matter: description (the same text) and alwaysApply: false.
    Windsurf.windsurf/rules/syntropylabs-evalkit.mdFront matter: trigger: model_decision and description.
    Any other agentAGENTS.mdAdd 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.

    EvalKit is built by SyntropyLabs. Published on PyPI and npm.