cmux/docs-site
Lawrence Chen 51a67e31fd
Socket access control: process ancestry check (#58)
* Socket access control: process ancestry check + file permissions

Redesign socket control modes from (off, notifications, full) to
(off, cmuxOnly, allowAll):

- cmuxOnly (default): uses LOCAL_PEERPID + sysctl process tree walk to
  verify the connecting process is a descendant of cmux. External
  processes (SSH, other terminals) are rejected.
- allowAll: hidden mode accessible only via CMUX_SOCKET_MODE=allowAll
  env var, skips ancestry check. Legacy "full"/"notifications" env
  values map here for backward compat.
- off: disables socket entirely.

Security hardening:
- Server: chmod 0600 on socket after bind (owner-only access)
- CLI: stat() ownership check before connect (reject fake sockets)

Removes per-command allow-list (isCommandAllowed) — once a process
passes the ancestry check, all commands are available.

Includes migration for persisted UserDefaults values and env var
aliases (cmux_only, cmux-only, allow_all, allow-all).

* Add /sync-branch skill for submodule + main sync
2026-02-18 01:09:24 -08:00
..
app Release v1.23.0 (#31) 2026-02-09 15:30:43 -08:00
content/docs Socket access control: process ancestry check (#58) 2026-02-18 01:09:24 -08:00
lib Add documentation site and Homebrew installation 2026-01-29 04:41:39 -08:00
public Add documentation site and Homebrew installation 2026-01-29 04:41:39 -08:00
.gitignore Add documentation site and Homebrew installation 2026-01-29 04:41:39 -08:00
next.config.mjs Add documentation site and Homebrew installation 2026-01-29 04:41:39 -08:00
package-lock.json Release v1.23.0 (#31) 2026-02-09 15:30:43 -08:00
package.json Add nightly update channel workflow and adopt AGPL licensing 2026-02-14 02:43:03 -08:00
postcss.config.mjs Add documentation site and Homebrew installation 2026-01-29 04:41:39 -08:00
README.md Release v1.23.0 (#31) 2026-02-09 15:30:43 -08:00
source.config.ts Add documentation site and Homebrew installation 2026-01-29 04:41:39 -08:00
tailwind.config.ts Add documentation site and Homebrew installation 2026-01-29 04:41:39 -08:00
tsconfig.json Add documentation site and Homebrew installation 2026-01-29 04:41:39 -08:00
vercel.json Add documentation site and Homebrew installation 2026-01-29 04:41:39 -08:00

cmux Documentation

Documentation website for cmux, built with Fumadocs and Next.js.

Development

# Install dependencies
npm install

# Start dev server
npm run dev

Open http://localhost:3000 to view the docs.

Deployment

This site is deployed to Vercel. Push to main to trigger a deployment.

Manual Deploy

npm run build
npx vercel --prod

Structure

docs-site/
├── app/                  # Next.js app router
│   ├── docs/            # Documentation pages
│   └── page.tsx         # Landing page
├── content/
│   └── docs/            # MDX documentation files
└── lib/
    └── source.ts        # Fumadocs source configuration

Adding Documentation

  1. Create a new .mdx file in content/docs/
  2. Add frontmatter with title and description
  3. Add the page to content/docs/meta.json

Example:

---
title: My Page
description: Description of my page
---

# My Page

Content here...