Workflow OS for AI coding agents.
Persistent memory, ~240-skill mesh, adaptive learning, code-intel graph, privacy hooks, observability dashboard, and a Tauri desktop Studio.
Quickstart · Studio for everyone · Releasing Studio · Contributing
| Surface | What it is | Where to dig |
|---|---|---|
| Studio | Tauri desktop app: chat with Codex first, Claude/OpenAI-compatible/Ollama second, 3D memory graph, schema Foundations view, CAR multi-lane runner, one-click deploy | apps/studio/ |
| Dashboard | Next.js 15 app at :3333 — memory graph, activity, skills, kanban, decisions, ops, analytics |
apps/dashboard/ |
| Skill mesh | 230+ skills across 4 layers (orchestrator → hub → utility → domain), canonical in .claude/skills; Codex starts from a small .agents/skills facade to avoid skill-budget overflow |
.claude/skills/_registry.json |
| Memory | Neon Postgres, 4-wing structure (agent / user / knowledge / experience), hybrid tsvector + pg_trgm + ILIKE search | packages/memory/ |
| Hooks | Pre/post-tool hooks, GateGuard, privacy gates, prompt router, handoff protocol | .claude/hooks/ |
| Code-Intel | Cross-file dependency graph + 5 MCP tools (code-symbols, code-deps, code-dependents, code-impact, code-modules) |
packages/code-intel/ |
| Ultra UI pipeline | Human-centered UI generation bundle: UX, concepts, composition, 2D/3D scene plan, motion, states, implementation, QA, and linted DESIGN.md |
docs/design/ultra-ui-human-pipeline.md |
| Tekiō | Adaptive-learning wheel — defensive / auxiliary / offensive / learning categories, infinite spins | packages/memory/src/adaptation.ts |
| VFS | AST-signature MCP for code exploration (60–98% token savings vs raw Read) | ~/go/bin/vfs |
UltraThink runtime setup is a pipeline, not a collection of copied files. Run the gate before trusting a local install:
pnpm run pipelineUse pnpm run pipeline:apply after changing prompts/skills/runtime wiring, pnpm run pipeline:install when global Codex/Claude projections must be rewritten, and pnpm run pipeline:full before shipping Studio/TUI/dashboard runtime changes. The stage model is documented in docs/architecture/runtime-pipeline.md.
Use Ultra UI for design work that needs to feel built by a product designer, not only token-valid:
cd .claude/skills/ultra-ui/lib
pnpm ultra-ui pipeline --brief "your product and audience" --out ./design-system/productThis writes DESIGN.md, UX.md, CONCEPTS.md, COMPOSITION.md, SCENE.md, MOTION.md, STATES.md, IMPLEMENTATION.md, and QA.md. See docs/design/ultra-ui-human-pipeline.md.
git clone https://github.com/InugamiDev/ultrathink.git
cd ultrathink
cp .env.example .env # then edit .env and paste your DATABASE_URL
pnpm run setup # installs deps, migrates DB, wires Codex + Claude pathsAfter that:
pnpm run dashboard:dev # → http://localhost:3333
cd apps/studio && pnpm tauri:dev # → desktop app (Mac / Win / Linux via Tauri 2)
codex # → primary runner with UltraThink skillsFull walkthrough — including the "first build" tutorial, CLI/TUI paths, and screenshot placeholders — at docs/getting-started/quickstart.md. Runtime pipeline is defined in docs/architecture/runtime-pipeline.md, and provider fit is defined in docs/architecture/runtime-provider-contract.md. Non-technical version: docs/getting-started/for-everyone.md.
A pnpm workspace. Studio is Tauri 2 + React 19, spawns a Node sidecar (packages/studio-engine) that proxies to Codex / Claude / Anthropic API / OpenAI-compat / Ollama with skill routing + memory injection. Dashboard is Next.js 15 reading the same Neon Postgres that Studio + hooks write to. Memory is a 4-wing graph (agent / user / knowledge / experience) with halls + rooms; identities + decisions are L0/L1 (always-loaded), insights are L2 (recalled), experience is L3 (on-demand). Hooks are bash/TS scripts that fire on Codex / Claude Code events (SessionStart, PreToolUse, PostToolUse, PreCompact, Stop) and shape the agent's behavior. Skills are markdown files routed by a TF-IDF-style trigger scorer that also follows linksTo edges to discover related skills.
Deeper reading: see AGENTS.md for the Codex runtime contract, CLAUDE.md for the compatibility runner contract, and docs/ for architecture, protocols, and guides.
One file. .env at the repo root. Three keys matter:
DATABASE_URL=postgres://...neon.tech/... # required for memory / activity / decisions
ANTHROPIC_API_KEY=sk-ant-... # only if you don't have the `claude` CLI on PATH
OPENAI_API_KEY=sk-... # only for codex / OpenAI-compat adapterStudio's Settings → Memory database writes DATABASE_URL into the OS keychain instead, so packaged .dmg installs never need a .env file. Same for the API keys.
.agents/ Codex-native facade skills for low-context startup
.claude/ canonical skills + hooks + agents + references (Claude-compatible source)
.codex/ Codex config and hook templates
.handoff/ per-user session-continuation files (gitignored)
apps/
studio/ Tauri 2 desktop app
dashboard/ Next.js dashboard at :3333
cli/ `ut` unified CLI
discord-bot/ Discord ↔ paperclip bridge
packages/
memory/ Neon-backed memory + Tekiō wheel + AAAK encoder
studio-engine/ Node sidecar that Studio spawns
code-intel/ dependency graph + MCP tools
mcp/ MCP server implementations (memory, design-doc, agora, transparency)
docs/ user-facing docs (QUICKSTART, STUDIO-FOR-EVERYONE, architecture, protocols)
scripts/ setup / install / migrate / runtime pipeline / codex sync
A unique-to-UltraThink feature: each session writes a handoff file under .handoff/ before context compact or close. The next session's SessionStart hook reads the newest one and resumes from "Next step" without re-reading the transcript. Saves 5-figure token counts on long-running threads.
Trigger phrases: "pack up", "wrap up", "save state", "before compact", "going to sleep". See CLAUDE.md → Handoff Protocol for the full spec.
GitHub Actions builds .dmg (macOS arm64 + x64), .msi / .nsis (Windows), .deb / .AppImage (Linux) when a studio-v* tag is pushed. Runbook: docs/ops/studio-release.md.
See LICENSE. Contribute via PRs against main; CI must pass.
Made by InugamiDev · feedback / issues / PRs welcome
