codistill – 既存コードからSSOTを搾り出す Image: AI generated

既存プロジェクトにSSOTを適用したいがゼロから書き直せないなら、レガシーのGo・TypeScript・Python・Java・C#・Rust・PHPバックエンドからOpenAPIとDDLを自動抽出したいなら――codistillが既存コードから仕様を搾り出す。

“We already have 200 endpoints”

codist scan --openapi ./my-project

十六のフレームワーク、八つの言語

言語フレームワーク
GoGin, Fiber, Echo
TypeScriptNestJS, Fastify, Hono, Express
PythonFastAPI, Flask, Django
JavaSpring Boot, Quarkus
C#ASP.NET Core
RustActix Web
PHPLaravel
Deno TypeScriptSupabase Edge Functions

三つ(Gin、NestJS、FastAPI)から始まったものが、いまや八つの言語、十六のフレームワークをカバーする。フレームワークはgo.modpackage.jsonrequirements.txtpom.xml*.csprojCargo.tomlcomposer.jsonsupabase/functions/から自動検出され、--frameworkで指定することもできる。ほとんどのバックエンドはtree-sitterで解析し、Go+Ginはgo/ast + go/typesを直接使う。

codist ddl ./migrations -o ./schema
codist sql next --repo ./repository --queries ./db/query
codist sql status
Existing code
  ↓ codist scan --openapi
  ↓ codist ddl
  ↓ codist sql next
OpenAPI + DDL + sqlc
  ↓ yongol validate
  ↓ yongol generate
SSOT-based codebase
npx skills add park-jun-woo/codistill

Code: github.com/park-jun-woo/codistill


関連記事

出典

  • Huang, R. et al. (2024). Generating REST API Specifications through Static Analysis. ICSE 2024. ACM
  • Perry, D. E. & Wolf, A. L. (1992). Foundations for the Study of Software Architecture. ACM
  • Fowler, M. (2004). StranglerFigApplication. Link
  • Lercher, A. et al. (2024). Generating Accurate OpenAPI Descriptions. arXiv
  • Chauhan, S. et al. (2026). OpenAI for OpenAPI. arXiv
  • De Silva, L. & Balasubramaniam, D. (2012). Controlling software architecture erosion. ScienceDirect
  • Fritzsch, J. et al. (2019). Microservices Migration in Industry. arXiv
  • Curino, C. A. et al. (2008). Graceful database schema evolution. VLDB
  • Nghiem, D. et al. (2023). REST API Design Practices. IEEE

変更履歴

  • 2026-06-19: カバレッジを8言語・16フレームワークに拡張; DDL ALTER COLUMN および Prisma スキーマ対応; 実際のコードベースに対して堅牢化(codistill v0.1.11)
  • 2026-05-26: 初版