SkeinSign in

Only what needs you reaches you.

Decide once. Every agent knows.

Skein is the decision layer for teams running coding agents. It settles what your team has already decided, and sends the rest to the one person who should decide, so people only see what actually needs them.

Sign in with GitHub. Free while in early testing.

The web inbox

One inbox for every open question: what's being asked, why, two or three options with their trade-offs, and a lean.

The Skein web inbox: an agent's open question with its context, two or three options with their trade-offs, and Skein's lean, ready to answer in one click.

The same question, as a DM

Skein sends it to the API's owner, not the whole channel, with the options, the agent's context and a lean.

Skein

Skein needs a decision on D-0020: Retry failed recipe URL fetches, and how often? Waiting: an agent working in worker PR 57, importing recipes from links. Why: The agent is adding import-from-link in PR 57 and found no retry rule. A. No retries; mark the import failed. Pro: Simple. Con: Blips lose imports. B. Three retries with backoff. Pro: Covers blips. Con: Failures take longer. Lean: B, from precedent D-0016: backs off like the rate-limit rule. Looks like a standing rule: applies to every import. Reply 'just now' with your answer if it isn't. Reply A, B, or in your own words. Related: D-0016 Rate limit responses

maya

B

Skein

Recorded as D-0027, answering D-0020 (Should the recipe import job retry failed URL fetches, and how many times?): 'Three retries with backoff' (option B). Reply no in this message's thread if that's not what you meant.

The record

Your record is plain Markdown: every decision, who made it, why, and what it replaced.

The team's record in the web inbox: each decision with who made it and why, the newest replacing an earlier one.

Principles

Your team writes the rules: what Skein may settle alone, who owns what, and the principles behind your calls.

The team's principles page: what Skein may settle alone, who owns which topics, and the principles behind the team's calls, each with the decisions that cite it.

Running in five minutes

  1. Sign in with GitHub and name your team. Skein runs your team's server and keeps your record.
  2. Connect your agents. Paste one line into your repo's .mcp.json.
  3. Invite your team. Questions that need a person show up in the web inbox.
{
  "mcpServers": {
    "skein": {
      "type": "http",
      "url": "https://your-team.skeinai.ca/mcp",
      "headers": {
        "Authorization": "Bearer ${SKEIN_SECRET}"
      }
    }
  }
}

Yours, not ours

Your record

Export or delete it any time, or keep it in your own private repo instead of ours.

Your rules

Skein never changes them without asking.

Your agents

Your agents run on your accounts. Skein never holds your Claude login and never runs your agents. It answers their questions.

Works with what you run

Claude Code, Cursor, Codex, or any agent that speaks MCP. Keep the orchestrator or harness you already use; Skein plugs into it. A blocked agent calls one tool, ask_skein, and gets back an answer with a citation, or the answer of the person who owns the question.