v4.1.0
v4.1.0 — Scaffolding release
Turns ContextOS from "a linter for existing .ctx files" into "the way you start a new project's .ctx".
✨ New commands
| Command | Purpose |
|---|---|
ctx create <project> --lang python,fastapi,react,... |
Scaffold a starter .ctx from a project name + comma-separated language list. Baseline rules (TDD-001, SEC-001, DOC-001) + per-language rules + matching [stack]. Flags: --domain, --role, --title, --output, --force, --list-languages. |
ctx init [path] [--dry-run] |
Walk an existing repo, read pyproject.toml / package.json / composer.json / go.mod / Cargo.toml / pom.xml / build.gradle / pubspec.yaml / mix.exs / Gemfile / *.csproj, and feed the detected stack to the same builder ctx create uses. --dry-run prints without writing. |
ctx upgrade [--check] [--pre] |
Query the PyPI JSON API for the newest context-os-ctx and pip install --upgrade via sys.executable (so the upgrade hits the same interpreter ctx runs under). |
📚 Language catalog (waves 1-3, 90+ entries)
- Backend — Python (+ FastAPI, Django, Flask, Litestar, Starlette), PHP (+ Symfony, Laravel, Slim, Hyperf, Doctrine), TypeScript/Node (+ NestJS, Express, Fastify, Hono, Elysia, AdonisJS, Bun), Go (+ Gin, Echo, Fiber, Chi), Rust (+ Axum, Actix), Ruby (+ Rails, Sinatra), Elixir/Phoenix, .NET/ASP.NET Core, Java/Kotlin (+ Spring Boot, Ktor, Quarkus, Micronaut), Dart, Scala, Swift, Clojure, Haskell
- Frontend — React, Next.js, Remix, Vue, Nuxt, Svelte, SvelteKit, Angular, SolidJS, Qwik, Astro, Preact, Lit
- HTML-first — HTMX, Hotwire (Turbo+Stimulus), Livewire, Alpine.js
- CSS/UI — Tailwind 4, shadcn/ui
- Mobile — Flutter, React Native, Kotlin Multiplatform, Ionic, SwiftUI, Jetpack Compose
- Desktop — Tauri 2, Electron, Compose Multiplatform
- ML / Data — PyTorch, TensorFlow, JAX, scikit-learn, LangChain, LlamaIndex
- DB / ORM — PostgreSQL, SQLAlchemy, Prisma, Drizzle, Doctrine
- Systems — C, C++, Zig
- Infra / DevOps — Docker, Kubernetes, Terraform, GitHub Actions
- API — GraphQL, gRPC, OpenAPI 3.1
Each entry carries an opinionated 1-3 rule starter set, a [stack].required block, and a category + wave tag.
🪄 Slug aliases
Type Next.js, c#, ts, spring boot, nextjs, reactnative, tailwindcss, nest … they all normalise to canonical registry keys.
🧪 Quality
- 1167 passed, 1 skipped in pytest (38 new tests for templates / builder / detector / CLI)
mypy --strictclean across 177 filesruff check+ruff formatclean
📦 Install / upgrade
pip install --upgrade context-os-ctx==4.1.0
# or, if a previous version is already installed:
ctx upgrade🔗 PRs
Full changelog: CHANGELOG.md § 4.1.0