用途:编辑本仓库的 Railway 基础设施即代码配置。期望状态来源为 .railway/railway.ts。适用于创建、修改、导入、审查或排查 Railway 项目配置。
主要能力:通过 railway/iac 导出的辅助函数编写声明式配置,如 service()、postgres()、redis()、mysql()、mongo()、bucket()、group()、github()、image()、preserve()、project()、defineRailway()。支持用 service.env.VARIABLE、database.env.VARIABLE 做引用,用 domains 声明自定义域名,用 replicas 声明副本数,用 group 分组。
使用方式:初始化 railway config init;导入当前状态 railway config pull,或用 railway config pull --omit-preserved-variables 生成省略未知变量值的较小文件;预览 railway config plan,机器可读预览加 --json;应用 railway config apply。编辑 .railway/railway.ts 后应运行 railway config plan。
限制与规则:表达产品意图而非内部 API 细节;不把 UUID、EnvironmentConfigPatch、ServiceInstance、Backboard 内部结构或生成的 Railway 域名写入源文件;密钥不进入源码,未知密钥值用 preserve() 或按需省略;优先产品 DSL 名称(domains、replicas、group),避免内部名称;不擅自添加平台默认值;不要同时用 .railway/railway.ts 与 railway.json/railway.toml 管理同一服务;仅在用户明确要求时才执行 apply,且不得在代理会话中用 --yes 或 --confirm-destructive 除非用户对具体计划明确批准。应用前需确认计划仅含预期变更。