{"id":"ed53bc40-70f9-4dbc-a571-441f29eb333a","slug":"opentsc","kind":"skill","name":"opentsc","summary":"A private, offline 'second brain' for the people, projects, and decisions you juggle — and it keeps score of whether your judgment was right. 本地私密的人际情报与决策记忆系统。","owner":"opentsc","repoUrl":"https://github.com/opentsc/opentsc","license":"AGPL-3.0","licenseTier":"strong-copyleft","trust":"community","stars":33,"match":null,"fewStars":false,"format":"skill","createdAt":null,"addedAt":"2026-10-14T06:27:11.127Z","logoUrl":"https://avatars.githubusercontent.com/u/295511615?v=4","linkOnly":false,"collection":null,"skillPath":null,"categories":["memory-knowledge"],"tags":["ai-agent","event-graph","knowledge-graph","soul-shell-architecture","thin-shell-company","interpersonal-intelligence"],"runtime":"binary","local":true,"cloudCapable":false,"cloudCapability":"unknown","cloudReadyOnPlatform":false,"needsApiKey":false,"reviewed":false,"syncedAt":"2026-10-14T08:13:09.112Z","sample":false,"url":"https://conduits.dev/tools/opentsc","language":"Python","transports":["stdio"],"install":{},"requirements":{"env":[],"upstreamMayCharge":false},"tools":null,"readme":"<div align=\"center\">\n\n# OpenTSC\n\n**A private, offline memory for the people, projects, and decisions you juggle — that also keeps score of whether your judgment was right.**\n\n🌐 **English** · [中文](README.zh-CN.md)\n\nby **dashen** (「AI 最严厉的父亲」) · [dashen.wang](https://dashen.wang) · [@dashen_wang](https://x.com/dashen_wang)\n\n[![License: AGPL v3](https://img.shields.io/badge/code-AGPL--3.0-blue.svg)](LICENSE) · ![version](https://img.shields.io/badge/version-v2.1.0-green.svg) · [Commercial license](LICENSING.md) · [Whitepaper (the \"soul\") →](https://github.com/opentsc/tsc)\n\n[Changelog](CHANGELOG.md) · [Migrate v1→v2](MIGRATION.md) · [Usage guide](docs/usage.md)\n\n</div>\n\n---\n\n## What is OpenTSC?\n\nYou deal with a lot of people and moving parts. Your notes are scattered, your memory is unreliable, and you rarely check whether your gut calls actually pan out. OpenTSC fixes that:\n\n- 📝 **You jot down what happened** — \"Carol delivered the quote on time\", \"Dave keeps stalling on the GPU order.\"\n- 🗂️ **It organizes everything into a searchable memory** — every fact tagged with where it came from and how trustworthy it is.\n- 💬 **You ask plain questions** — *Who reliably delivers? Have I dealt with a situation like this before? What am I still waiting on, and from whom?*\n- 🎯 **You log predictions; it later tells you your hit rate** — so your judgment actually improves over time instead of quietly drifting.\n- 🔒 **Everything stays on your own computer.** Offline-first, single-user, no cloud, no account.\n\nIt is **not** a CRM (it's about judgment and operations, not storing contacts) and **not** a social network. Think of it as a **second brain for your working relationships and operations** — one that holds you accountable to reality.\n\n## What can you actually do with it?\n\n| You want to… | Plain-language ask → it runs |\n|---|---|\n| Record something that happened, with evidence | \"log that Carol delivered on time\" → `event-add` |\n| Find people or situations by **meaning**, not keywords | \"who's reliable on delivery?\" → `index-search` |\n| Avoid creating a duplicate record of the same person | \"is there already a Mike?\" → `identity-resolve` |\n| See what's gone stale or overdue | \"what's rotting in my to-do list?\" → `actions-stale` |\n| Score your own predictions over time | `stage-prediction` → `calibrate` → `accuracy` |\n| Spot patterns in your own notes | \"who's been negative lately?\" → `index-mood` |\n\n> Examples use placeholder names (Carol, Dave…). **OpenTSC ships with zero real data.** Use it responsibly and only on information you're allowed to hold — see [SECURITY.md](SECURITY.md).\n\n## How it works (30 seconds)\n\nOpenTSC is a **skill for AI coding agents** (Claude Code, and others) plus a **Python command-line tool**. You talk to it in plain language through your agent; it stores everything as plain Markdown files **you own**, and builds a fast, semantic search index on top.\n\n```bash\npython skill/scripts/opentsc.py --root my-vault init\npython skill/scripts/opentsc.py --root my-vault event-add B2 \"Carol delivered the quote on time\" \"meeting note\" --link p_carol\npython skill/scripts/opentsc.py --root my-vault index-search \"who is reliable\" --kind entity\n```\n\nOptional power-ups (all opt-in — the core runs with zero extra installs): Chinese word segmentation (jieba), emotion scoring (lexicon / local model / LLM), and a vector memory index (zvec). See the [usage guide](docs/usage.md).\n\n## Quick start\n\n> **Requires Python 3.10–3.14** for the optional `zvec` index (the core itself\n> runs on bare Python). On macOS (system Python is 3.9) or if you hit\n> `externally-managed-environment`, use **uv** — full guide in **[INSTALL.md](INSTALL.md)**.\n\n```bash\n# 1. install as a skill — the repo's skill/ subdir IS the skill, not the repo root\ngit clone https://github.com/opentsc/opentsc\ncp -r opentsc/skill ~/.claude/skills/opentsc        # or ~/.hermes/skills/opentsc\n\n# 2. (optional) turn on the memory engine — recommended Tier-1 backends\nuv venv ~/.venvs/opentsc --python 3.11 && source ~/.venvs/opentsc/bin/activate\nuv pip install jieba snownlp zvec\ncp opentsc/skill/templates/_config.yaml <your-vault>/soul/_config.yaml\n```\n\nThen read the [usage guide](docs/usage.md) · install details in [INSTALL.md](INSTALL.md) · upgrading from v1.0? [MIGRATION.md](MIGRATION.md) (your data needs no changes).\n\n## The bigger idea\n\nOpenTSC is the **\"shell\"** of a concept called **TSC — the Thin-Shell Company**: how *one person* can run a large, self-evolving operation with AI agents. The one idea worth knowing:\n\n> Keep your **judgment and memory** (the \"soul\") separate from whatever software, team, or AI model happens to run it (the \"shell\") — so it survives any tool change. Export the soul, and you've exported the whole thing.\n\nThe full doctrine lives in the [whitepaper / \"soul\" repo](https://github.com/opentsc/tsc). The mapping from each principle to the code that implements it is in [SKILL.md](skill/SKILL.md).\n\n## License\n\n- **Code**: [AGPL-3.0](LICENSE) for the community; a [commercial license](LICENSING.md) is available for closed-source use.\n- **Name & brand**: OpenTSC™ / TSC™ are trademarks — see [TRADEMARK.md](TRADEMARK.md).\n- Contributions: see [CONTRIBUTING.md](CONTRIBUTING.md) (includes a CLA).\n\n---\n\n<div align=\"center\">\nOpenTSC · created by dashen「AI 最严厉的父亲」· <a href=\"https://dashen.wang\">dashen.wang</a> · <a href=\"https://x.com/dashen_wang\">@dashen_wang</a>\n</div>\n"}