사용 방법
- 설치 명령을 복사하고 자신의 에이전트 환경에 설치하기 전에 소스 패키지를 확인하세요.
- 필요한 도구, 인증 정보, 지원 환경은 원본 문서에서 확인하세요.
- 입력과 원하는 산출물을 설명하고 출처와 결과를 대조하세요.
npx skills add https://github.com/factorialco/factorial-code-skills --skill fcode-release시작 전 확인
- 설치에는 모델 구독, API 한도, 파일 접근 권한이 포함되지 않습니다.
- 별점 수와 설치 수는 활동 지표이며 독립적인 품질·보안 검증이 아닙니다.
원본 저장소의 제목, 예시, 코드, 표, 링크, 이미지를 유지해 표시합니다.
Factorial Code — Release
Promotes an app's code from its dev-… workspace to its prod-… workspace using CLI remotes. Input: the two workspace slugs. This updates prod's current (unversioned) code only — publishing a workspace version and moving the stable alias is the separate platform release (model in fcode-core-concepts, journey in fcode-ama): don't run settings:versions:* or move stable in this flow unless explicitly asked.
Gate every release with fcode-code-validation — see the procedure.
Gotchas
- Prod write access is required. Only operators and the app's Factorial
team admins can push to a prod-… workspace; the admin's grant lands when a release is requested and rides in the access token — if prod access is refused right after requesting, run fcode login and retry. Who promotes and why: fcode-ama.
- A ✅ validation is required before pushing. Run
fcode-code-validation
on the dev workspace first; while the report has Blockers, refuse to push. Only an explicit user override ("push anyway despite the Blockers") proceeds — record that the gate was overridden.
- Always confirm before the final `fcode push`. Summarize what will
change in the prod workspace and wait for an explicit yes — prod code serves live installations.
- Never `--force`. If
fcode pullorfcode pushreports a divergence
between local and prod, stop, show what diverged, and ask the user how to proceed (fcode-cli).
- The `fcode pull` after `remote:add` is mandatory — it picks up the
prod workspace's current metadata. Skipping it pushes stale settings over prod's.
- Both slugs are encoded tokens (
dev-…/prod-…), not the app's
UUID (see fcode-cli). Verify the prefixes: cloning target and push target must not be swapped.
- A failing `fcode clone` usually means a mistyped token or missing
access (see fcode-ama) — don't retry blindly.
- If `dev-xxx/` already exists locally, don't reuse it silently — ask
whether to release from a fresh clone (recommended) or the existing copy, and fcode pull it first.
Procedure
- Collect the two slugs. One
dev-…(source) and oneprod-…
(target). Wrong prefix or any ambiguity about which app they belong to: stop and ask.
- Validation gate. Ensure a current ✅
APP_VALIDATION_REPORT.md
exists for the dev workspace — run fcode-code-validation when it is missing or stale. On ❌, list the Blockers and refuse; proceed only on an explicit user override.
- Clone and wire the prod remote:
fcode clone --skipSkillsSetup dev-xxx
cd dev-xxx
fcode remote:add prod-xxx
fcode pull # mandatory: picks up prod's current metadata
fcode add # registers resources prod doesn't have yetOn a divergence reported by fcode pull: stop and ask (see Gotchas).
- Confirm. Run
fcode status, summarize for the user what the push
will change in prod-xxx (processes, modules, variables, settings), and wait for explicit confirmation.
- Push:
fcode pushOn a divergence: stop and ask — never --force on your own.
- Report the outcome, reminding the user that the platform release
(publish a version, move stable) is a separate step (fcode-ama).



