<!doctype html>
<html lang="en" data-world="undertow" data-theme="dark">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" />
    <title>tcell-helper · SoulStack docs</title>
    <meta name="description" content="The one entry point to the immune system. Reads the current state of the immune system, decides which immune cells run and in what order, and owns the consolidated verdict. Use when you are not sure which immune cell you need, or the job spans several. Examples - &quot;is the product healthy&quot;, &quot;get me release confidence&quot;, &quot;something feels off on Windows&quot;, &quot;improve our immune system&quot;. Stem cell: grows into this project's own version on first run." />
    <meta property="og:type" content="website" />
    <meta property="og:site_name" content="SoulStack" />
    <meta property="og:title" content="tcell-helper · SoulStack docs" />
    <meta property="og:description" content="The one entry point to the immune system. Reads the current state of the immune system, decides which immune cells run and in what order, and owns the consolidated verdict. Use when you are not sure which immune cell you need, or the job spans several. Examples - &quot;is the product healthy&quot;, &quot;get me release confidence&quot;, &quot;something feels off on Windows&quot;, &quot;improve our immune system&quot;. Stem cell: grows into this project's own version on first run." />
    <meta property="og:url" content="https://soulstack.proxysoul.com/docs/immune-cells/tcell-helper" />
    <meta property="og:image" content="https://soulstack.proxysoul.com/og/docs.png" />
    <meta property="og:image:width" content="1200" />
    <meta property="og:image:height" content="630" />
    <meta name="twitter:card" content="summary_large_image" />
    <meta name="twitter:image" content="https://soulstack.proxysoul.com/og/docs.png" />
    <link rel="icon" href="/brand/logo-undertow.webp" />
    <link rel="alternate" type="text/markdown" href="/index.md" title="This page as Markdown" />
    <link rel="help" href="/llms.txt" title="Docs for agents" />
    <link rel="preload" href="/fonts/recursive-living.woff2" as="font" type="font/woff2" crossorigin />
    <script>
      (() => {
        const q = new URLSearchParams(location.search);
        const worlds = ["empryo", "soul", "coffee", "water", "crimson", "undertow"];
        let saved = null;
        try {
          saved = JSON.parse(localStorage.getItem("soulstack-world") || "null");
        } catch (err) {
          console.warn("soulstack: ignoring saved world", err);
        }
        const world = q.get("world") || saved?.world || worlds[Math.floor(Math.random() * worlds.length)];
        const mode = q.get("mode") || saved?.mode || (matchMedia("(prefers-color-scheme: light)").matches ? "light" : "dark");
        const r = document.documentElement;
        r.dataset.world = worlds.includes(world) ? world : "undertow";
        r.dataset.theme = mode === "light" ? "light" : "dark";
        r.dataset.motion = q.get("motion") === "still" || matchMedia("(prefers-reduced-motion: reduce)").matches ? "still" : "live";
        const icon = document.querySelector("link[rel=icon]");
        if (icon) icon.href = "/brand/" + ({ empryo: "logo-mark", soul: "logo-proxysoul" }[r.dataset.world] || "logo-" + r.dataset.world) + ".webp";
      })();
    </script>
    <script type="module" crossorigin src="/assets/index-jooLEQoa.js"></script>
    <link rel="stylesheet" crossorigin href="/assets/index-DgXdzYtk.css">
  </head>
  <body>
    <div id="app"></div>
  </body>
</html>
